{ "components": { "schemas": { "ConfigEOS": { "description": "Singleton configuration handler for the EOS application.\n\nConfigEOS extends `SettingsEOS` with support for default configuration paths and automatic\ninitialization.\n\n`ConfigEOS` ensures that only one instance of the class is created throughout the application,\nallowing consistent access to EOS configuration settings. This singleton instance loads\nconfiguration data from a predefined set of directories or creates a default configuration if\nnone is found.\n\nInitialization Process:\n - Upon instantiation, the singleton instance attempts to load a configuration file in this order:\n 1. The directory specified by the `EOS_CONFIG_DIR` environment variable\n 2. The directory specified by the `EOS_DIR` environment variable.\n 3. A platform specific default directory for EOS.\n 4. The current working directory.\n - The first available configuration file found in these directories is loaded.\n - If no configuration file is found, a default configuration file is created in the platform\n specific default directory, and default settings are loaded into it.\n\nAttributes from the loaded configuration are accessible directly as instance attributes of\n`ConfigEOS`, providing a centralized, shared configuration object for EOS.\n\nSingleton Behavior:\n - This class uses the `SingletonMixin` to ensure that all requests for `ConfigEOS` return\n the same instance, which contains the most up-to-date configuration. Modifying the configuration\n in one part of the application reflects across all references to this class.\n\nAttributes:\n _settings (ClassVar[SettingsEOS]): Holds application-wide settings.\n _file_settings (ClassVar[SettingsEOS]): Stores configuration loaded from file.\n config_folder_path (Optional[Path]): Path to the configuration directory.\n config_file_path (Optional[Path]): Path to the configuration file.\n\nRaises:\n FileNotFoundError: If no configuration file is found, and creating a default configuration fails.\n\nExample:\n To initialize and access configuration attributes (only one instance is created):\n ```python\n config_eos = ConfigEOS() # Always returns the same instance\n print(config_eos.prediction_hours) # Access a setting from the loaded configuration\n ```", "properties": { "battery_capacity": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery capacity [Wh].", "title": "Battery Capacity" }, "battery_charging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery charging efficiency [%].", "title": "Battery Charging Efficiency" }, "battery_discharging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery discharging efficiency [%].", "title": "Battery Discharging Efficiency" }, "battery_initial_soc": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery initial state of charge [%].", "title": "Battery Initial Soc" }, "battery_max_charging_power": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery maximum charge power [W].", "title": "Battery Max Charging Power" }, "battery_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Battery simulation provider.", "title": "Battery Provider" }, "battery_soc_max": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery maximum state of charge [%].", "title": "Battery Soc Max" }, "battery_soc_min": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery minimum state of charge [%].", "title": "Battery Soc Min" }, "bev_capacity": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle capacity [Wh].", "title": "Bev Capacity" }, "bev_charging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery Electric Vehicle charging efficiency [%].", "title": "Bev Charging Efficiency" }, "bev_discharging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery Electric Vehicle discharging efficiency [%].", "title": "Bev Discharging Efficiency" }, "bev_initial_soc": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle initial state of charge [%].", "title": "Bev Initial Soc" }, "bev_max_charging_power": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle maximum charge power [W].", "title": "Bev Max Charging Power" }, "bev_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Battery Electric Vehicle simulation provider.", "title": "Bev Provider" }, "bev_soc_max": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle maximum state of charge [%].", "title": "Bev Soc Max" }, "config_default_file_path": { "description": "Compute the default config file path.", "format": "path", "readOnly": true, "title": "Config Default File Path", "type": "string" }, "config_file_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to EOS configuration file.", "readOnly": true, "title": "Config File Path" }, "config_folder_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to EOS configuration directory.", "readOnly": true, "title": "Config Folder Path" }, "config_keys": { "description": "Returns the keys of all fields in the configuration.", "items": { "type": "string" }, "readOnly": true, "title": "Config Keys", "type": "array" }, "data_cache_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Compute data_cache_path based on data_folder_path.", "readOnly": true, "title": "Data Cache Path" }, "data_cache_subpath": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "default": "cache", "description": "Sub-path for the EOS cache data directory.", "title": "Data Cache Subpath" }, "data_folder_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to EOS data directory.", "title": "Data Folder Path" }, "data_output_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Compute data_output_path based on data_folder_path.", "readOnly": true, "title": "Data Output Path" }, "data_output_subpath": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "default": "output", "description": "Sub-path for the EOS output data directory.", "title": "Data Output Subpath" }, "dishwasher_consumption": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Dish Washer energy consumption [Wh].", "title": "Dishwasher Consumption" }, "dishwasher_duration": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Dish Washer usage duration [h].", "title": "Dishwasher Duration" }, "dishwasher_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Dish Washer simulation provider.", "title": "Dishwasher Provider" }, "elecprice_charges_kwh": { "anyOf": [ { "minimum": 0.0, "type": "number" }, { "type": "null" } ], "description": "Electricity price charges (\u20ac/kWh).", "title": "Elecprice Charges Kwh" }, "elecprice_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Electricity price provider id of provider to be used.", "title": "Elecprice Provider" }, "elecpriceimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import elecprice data from.", "title": "Elecpriceimport File Path" }, "elecpriceimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of electricity price forecast value lists.", "title": "Elecpriceimport Json" }, "inverter_power_max": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Inverter maximum power [W].", "title": "Inverter Power Max" }, "inverter_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of PV Inverter simulation provider.", "title": "Inverter Provider" }, "latitude": { "anyOf": [ { "maximum": 90.0, "minimum": -90.0, "type": "number" }, { "type": "null" } ], "description": "Latitude in decimal degrees, between -90 and 90, north is positive (ISO 19115) (\u00b0)", "title": "Latitude" }, "load_import_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import load data from.", "title": "Load Import File Path" }, "load_import_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of load forecast value lists.", "title": "Load Import Json" }, "load_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Load provider id of provider to be used.", "title": "Load Provider" }, "loadakkudoktor_year_energy": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Yearly energy consumption (kWh).", "title": "Loadakkudoktor Year Energy" }, "longitude": { "anyOf": [ { "maximum": 180.0, "minimum": -180.0, "type": "number" }, { "type": "null" } ], "description": "Longitude in decimal degrees, within -180 to 180 (\u00b0)", "title": "Longitude" }, "measurement_load0_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load0 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load0 Name" }, "measurement_load1_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load1 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load1 Name" }, "measurement_load2_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load2 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load2 Name" }, "measurement_load3_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load3 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load3 Name" }, "measurement_load4_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load4 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load4 Name" }, "optimization_ev_available_charge_rates_percent": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "default": [ 0.0, 0.375, 0.5, 0.625, 0.75, 0.875, 1.0 ], "description": "Charge rates available for the EV in percent of maximum charge.", "title": "Optimization Ev Available Charge Rates Percent" }, "optimization_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 24, "description": "Number of hours into the future for optimizations.", "title": "Optimization Hours" }, "optimization_penalty": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 10, "description": "Penalty factor used in optimization.", "title": "Optimization Penalty" }, "prediction_historic_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 48, "description": "Number of hours into the past for historical predictions data", "title": "Prediction Historic Hours" }, "prediction_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 48, "description": "Number of hours into the future for predictions", "title": "Prediction Hours" }, "pvforecast0_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast0 Albedo" }, "pvforecast0_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast0 Inverter Model" }, "pvforecast0_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast0 Inverter Paco" }, "pvforecast0_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Sum of PV system losses in percent", "title": "Pvforecast0 Loss" }, "pvforecast0_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast0 Module Model" }, "pvforecast0_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast0 Modules Per String" }, "pvforecast0_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast0 Mountingplace" }, "pvforecast0_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast0 Optimal Surface Tilt" }, "pvforecast0_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast0 Optimalangles" }, "pvforecast0_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast0 Peakpower" }, "pvforecast0_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast0 Pvtechchoice" }, "pvforecast0_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast0 Strings Per Inverter" }, "pvforecast0_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast0 Surface Azimuth" }, "pvforecast0_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast0 Surface Tilt" }, "pvforecast0_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast0 Trackingtype" }, "pvforecast0_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast0 Userhorizon" }, "pvforecast1_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast1 Albedo" }, "pvforecast1_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast1 Inverter Model" }, "pvforecast1_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast1 Inverter Paco" }, "pvforecast1_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast1 Loss" }, "pvforecast1_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast1 Module Model" }, "pvforecast1_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast1 Modules Per String" }, "pvforecast1_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast1 Mountingplace" }, "pvforecast1_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast1 Optimal Surface Tilt" }, "pvforecast1_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast1 Optimalangles" }, "pvforecast1_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast1 Peakpower" }, "pvforecast1_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast1 Pvtechchoice" }, "pvforecast1_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast1 Strings Per Inverter" }, "pvforecast1_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast1 Surface Azimuth" }, "pvforecast1_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast1 Surface Tilt" }, "pvforecast1_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast1 Trackingtype" }, "pvforecast1_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast1 Userhorizon" }, "pvforecast2_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast2 Albedo" }, "pvforecast2_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast2 Inverter Model" }, "pvforecast2_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast2 Inverter Paco" }, "pvforecast2_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast2 Loss" }, "pvforecast2_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast2 Module Model" }, "pvforecast2_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast2 Modules Per String" }, "pvforecast2_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast2 Mountingplace" }, "pvforecast2_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast2 Optimal Surface Tilt" }, "pvforecast2_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast2 Optimalangles" }, "pvforecast2_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast2 Peakpower" }, "pvforecast2_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast2 Pvtechchoice" }, "pvforecast2_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast2 Strings Per Inverter" }, "pvforecast2_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast2 Surface Azimuth" }, "pvforecast2_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast2 Surface Tilt" }, "pvforecast2_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast2 Trackingtype" }, "pvforecast2_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast2 Userhorizon" }, "pvforecast3_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast3 Albedo" }, "pvforecast3_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast3 Inverter Model" }, "pvforecast3_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast3 Inverter Paco" }, "pvforecast3_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast3 Loss" }, "pvforecast3_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast3 Module Model" }, "pvforecast3_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast3 Modules Per String" }, "pvforecast3_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast3 Mountingplace" }, "pvforecast3_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast3 Optimal Surface Tilt" }, "pvforecast3_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast3 Optimalangles" }, "pvforecast3_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast3 Peakpower" }, "pvforecast3_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast3 Pvtechchoice" }, "pvforecast3_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast3 Strings Per Inverter" }, "pvforecast3_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast3 Surface Azimuth" }, "pvforecast3_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast3 Surface Tilt" }, "pvforecast3_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast3 Trackingtype" }, "pvforecast3_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast3 Userhorizon" }, "pvforecast4_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast4 Albedo" }, "pvforecast4_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast4 Inverter Model" }, "pvforecast4_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast4 Inverter Paco" }, "pvforecast4_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast4 Loss" }, "pvforecast4_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast4 Module Model" }, "pvforecast4_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast4 Modules Per String" }, "pvforecast4_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast4 Mountingplace" }, "pvforecast4_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast4 Optimal Surface Tilt" }, "pvforecast4_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast4 Optimalangles" }, "pvforecast4_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast4 Peakpower" }, "pvforecast4_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast4 Pvtechchoice" }, "pvforecast4_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast4 Strings Per Inverter" }, "pvforecast4_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast4 Surface Azimuth" }, "pvforecast4_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast4 Surface Tilt" }, "pvforecast4_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast4 Trackingtype" }, "pvforecast4_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast4 Userhorizon" }, "pvforecast5_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast5 Albedo" }, "pvforecast5_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast5 Inverter Model" }, "pvforecast5_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast5 Inverter Paco" }, "pvforecast5_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast5 Loss" }, "pvforecast5_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast5 Module Model" }, "pvforecast5_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast5 Modules Per String" }, "pvforecast5_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast5 Mountingplace" }, "pvforecast5_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast5 Optimal Surface Tilt" }, "pvforecast5_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast5 Optimalangles" }, "pvforecast5_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast5 Peakpower" }, "pvforecast5_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast5 Pvtechchoice" }, "pvforecast5_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast5 Strings Per Inverter" }, "pvforecast5_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast5 Surface Azimuth" }, "pvforecast5_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast5 Surface Tilt" }, "pvforecast5_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast5 Trackingtype" }, "pvforecast5_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast5 Userhorizon" }, "pvforecast_planes": { "description": "Compute a list of active planes.", "items": { "type": "string" }, "readOnly": true, "title": "Pvforecast Planes", "type": "array" }, "pvforecast_planes_azimuth": { "description": "Compute a list of the azimuths per active planes.", "items": { "type": "number" }, "readOnly": true, "title": "Pvforecast Planes Azimuth", "type": "array" }, "pvforecast_planes_inverter_paco": { "description": "Compute a list of the maximum power rating of the inverter per active planes.", "readOnly": true, "title": "Pvforecast Planes Inverter Paco" }, "pvforecast_planes_peakpower": { "description": "Compute a list of the peak power per active planes.", "items": { "type": "number" }, "readOnly": true, "title": "Pvforecast Planes Peakpower", "type": "array" }, "pvforecast_planes_tilt": { "description": "Compute a list of the tilts per active planes.", "items": { "type": "number" }, "readOnly": true, "title": "Pvforecast Planes Tilt", "type": "array" }, "pvforecast_planes_userhorizon": { "description": "Compute a list of the user horizon per active planes.", "readOnly": true, "title": "Pvforecast Planes Userhorizon" }, "pvforecast_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "PVForecast provider id of provider to be used.", "title": "Pvforecast Provider" }, "pvforecastimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import PV forecast data from.", "title": "Pvforecastimport File Path" }, "pvforecastimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of PV forecast value lists.", "title": "Pvforecastimport Json" }, "server_fastapi_host": { "anyOf": [ { "format": "ipvanyaddress", "type": "string" }, { "type": "null" } ], "default": "0.0.0.0", "description": "FastAPI server IP address.", "title": "Server Fastapi Host" }, "server_fastapi_port": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 8503, "description": "FastAPI server IP port number.", "title": "Server Fastapi Port" }, "server_fastapi_startup_server_fasthtml": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": true, "description": "FastAPI server to startup application FastHTML server.", "title": "Server Fastapi Startup Server Fasthtml" }, "server_fastapi_verbose": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Enable debug output", "title": "Server Fastapi Verbose" }, "server_fasthtml_host": { "anyOf": [ { "format": "ipvanyaddress", "type": "string" }, { "type": "null" } ], "default": "0.0.0.0", "description": "FastHTML server IP address.", "title": "Server Fasthtml Host" }, "server_fasthtml_port": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 8504, "description": "FastHTML server IP port number.", "title": "Server Fasthtml Port" }, "timezone": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Compute timezone based on latitude and longitude.", "readOnly": true, "title": "Timezone" }, "weather_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Weather provider id of provider to be used.", "title": "Weather Provider" }, "weatherimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import weather data from.", "title": "Weatherimport File Path" }, "weatherimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of weather forecast value lists.", "title": "Weatherimport Json" } }, "required": [ "pvforecast_planes", "pvforecast_planes_peakpower", "pvforecast_planes_azimuth", "pvforecast_planes_tilt", "pvforecast_planes_userhorizon", "pvforecast_planes_inverter_paco", "timezone", "data_output_path", "data_cache_path", "config_folder_path", "config_file_path", "config_default_file_path", "config_keys" ], "title": "ConfigEOS", "type": "object" }, "ElectricVehicleParameters": { "description": "Parameters specific to an electric vehicle (EV).", "properties": { "capacity_wh": { "description": "An integer representing the capacity of the battery in watt-hours.", "exclusiveMinimum": 0.0, "title": "Capacity Wh", "type": "integer" }, "charging_efficiency": { "default": 0.88, "description": "A float representing the charging efficiency of the battery.", "exclusiveMinimum": 0.0, "maximum": 1.0, "title": "Charging Efficiency", "type": "number" }, "discharging_efficiency": { "default": 1.0, "title": "Discharging Efficiency", "type": "number" }, "initial_soc_percentage": { "default": 0, "description": "An integer representing the current state of charge (SOC) of the battery in percentage.", "maximum": 100.0, "minimum": 0.0, "title": "Initial Soc Percentage", "type": "integer" }, "max_charge_power_w": { "anyOf": [ { "exclusiveMinimum": 0.0, "type": "number" }, { "type": "null" } ], "default": 5000, "description": "Maximum charging power in watts.", "title": "Max Charge Power W" }, "max_soc_percentage": { "default": 100, "description": "An integer representing the maximum state of charge (SOC) of the battery in percentage.", "maximum": 100.0, "minimum": 0.0, "title": "Max Soc Percentage", "type": "integer" }, "min_soc_percentage": { "default": 0, "description": "An integer representing the minimum state of charge (SOC) of the battery in percentage.", "maximum": 100.0, "minimum": 0.0, "title": "Min Soc Percentage", "type": "integer" } }, "required": [ "capacity_wh" ], "title": "ElectricVehicleParameters", "type": "object" }, "ElectricVehicleResult": { "description": "Result class containing information related to the electric vehicle's charging and discharging behavior.", "properties": { "capacity_wh": { "description": "Capacity of the EV\u2019s battery in watt-hours.", "title": "Capacity Wh", "type": "integer" }, "charge_array": { "description": "Hourly charging status (0 for no charging, 1 for charging).", "items": { "type": "number" }, "title": "Charge Array", "type": "array" }, "charging_efficiency": { "description": "Charging efficiency as a float..", "title": "Charging Efficiency", "type": "number" }, "discharge_array": { "description": "Hourly discharging status (0 for no discharging, 1 for discharging).", "items": { "type": "integer" }, "title": "Discharge Array", "type": "array" }, "discharging_efficiency": { "description": "The discharge efficiency as a float..", "title": "Discharging Efficiency", "type": "number" }, "hours": { "description": "Number of hours in the simulation.", "title": "Hours", "type": "integer" }, "initial_soc_percentage": { "description": "State of charge at the start of the simulation in percentage.", "title": "Initial Soc Percentage", "type": "integer" }, "max_charge_power_w": { "description": "Maximum charging power in watts.", "title": "Max Charge Power W", "type": "integer" }, "soc_wh": { "description": "State of charge of the battery in watt-hours at the start of the simulation.", "title": "Soc Wh", "type": "number" } }, "required": [ "charge_array", "discharge_array", "discharging_efficiency", "hours", "capacity_wh", "charging_efficiency", "max_charge_power_w", "soc_wh", "initial_soc_percentage" ], "title": "ElectricVehicleResult", "type": "object" }, "EnergieManagementSystemParameters": { "properties": { "einspeiseverguetung_euro_pro_wh": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "number" } ], "description": "A float or array of floats representing the feed-in compensation in euros per watt-hour.", "title": "Einspeiseverguetung Euro Pro Wh" }, "gesamtlast": { "description": "An array of floats representing the total load (consumption) in watts for different time intervals.", "items": { "type": "number" }, "title": "Gesamtlast", "type": "array" }, "preis_euro_pro_wh_akku": { "description": "A float representing the cost of battery energy per watt-hour.", "title": "Preis Euro Pro Wh Akku", "type": "number" }, "pv_prognose_wh": { "description": "An array of floats representing the forecasted photovoltaic output in watts for different time intervals.", "items": { "type": "number" }, "title": "Pv Prognose Wh", "type": "array" }, "strompreis_euro_pro_wh": { "description": "An array of floats representing the electricity price in euros per watt-hour for different time intervals.", "items": { "type": "number" }, "title": "Strompreis Euro Pro Wh", "type": "array" } }, "required": [ "pv_prognose_wh", "strompreis_euro_pro_wh", "einspeiseverguetung_euro_pro_wh", "preis_euro_pro_wh_akku", "gesamtlast" ], "title": "EnergieManagementSystemParameters", "type": "object" }, "ForecastResponse": { "properties": { "pvpower": { "items": { "type": "number" }, "title": "Pvpower", "type": "array" }, "temperature": { "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Temperature", "type": "array" } }, "required": [ "temperature", "pvpower" ], "title": "ForecastResponse", "type": "object" }, "GesamtlastRequest": { "properties": { "hours": { "title": "Hours", "type": "integer" }, "measured_data": { "items": { "type": "object" }, "title": "Measured Data", "type": "array" }, "year_energy": { "title": "Year Energy", "type": "number" } }, "required": [ "year_energy", "measured_data", "hours" ], "title": "GesamtlastRequest", "type": "object" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "title": "Detail", "type": "array" } }, "title": "HTTPValidationError", "type": "object" }, "HomeApplianceParameters": { "properties": { "consumption_wh": { "description": "An integer representing the energy consumption of a household device in watt-hours.", "exclusiveMinimum": 0.0, "title": "Consumption Wh", "type": "integer" }, "duration_h": { "description": "An integer representing the usage duration of a household device in hours.", "exclusiveMinimum": 0.0, "title": "Duration H", "type": "integer" } }, "required": [ "consumption_wh", "duration_h" ], "title": "HomeApplianceParameters", "type": "object" }, "InverterParameters": { "properties": { "max_power_wh": { "default": 10000, "exclusiveMinimum": 0.0, "title": "Max Power Wh", "type": "number" } }, "title": "InverterParameters", "type": "object" }, "OptimizationParameters": { "properties": { "dishwasher": { "anyOf": [ { "$ref": "#/components/schemas/HomeApplianceParameters" }, { "type": "null" } ] }, "eauto": { "anyOf": [ { "$ref": "#/components/schemas/ElectricVehicleParameters" }, { "type": "null" } ] }, "ems": { "$ref": "#/components/schemas/EnergieManagementSystemParameters" }, "inverter": { "$ref": "#/components/schemas/InverterParameters", "default": { "max_power_wh": 10000.0 } }, "pv_akku": { "$ref": "#/components/schemas/SolarPanelBatteryParameters" }, "start_solution": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Can be `null` or contain a previous solution (if available).", "title": "Start Solution" }, "temperature_forecast": { "anyOf": [ { "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "type": "array" }, { "type": "null" } ], "description": "An array of floats representing the temperature forecast in degrees Celsius for different time intervals.", "title": "Temperature Forecast" } }, "required": [ "ems", "pv_akku", "eauto" ], "title": "OptimizationParameters", "type": "object" }, "OptimizeResponse": { "description": "**Note**: The first value of \"Last_Wh_per_hour\", \"Netzeinspeisung_Wh_per_hour\", and \"Netzbezug_Wh_per_hour\", will be set to null in the JSON output and represented as NaN or None in the corresponding classes' data returns. This approach is adopted to ensure that the current hour's processing remains unchanged.", "properties": { "ac_charge": { "description": "Array with AC charging values as relative power (0-1), other values set to 0.", "items": { "type": "number" }, "title": "Ac Charge", "type": "array" }, "dc_charge": { "description": "Array with DC charging values as relative power (0-1), other values set to 0.", "items": { "type": "number" }, "title": "Dc Charge", "type": "array" }, "discharge_allowed": { "description": "Array with discharge values (1 for discharge, 0 otherwise).", "items": { "type": "integer" }, "title": "Discharge Allowed", "type": "array" }, "eauto_obj": { "anyOf": [ { "$ref": "#/components/schemas/ElectricVehicleResult" }, { "type": "null" } ] }, "eautocharge_hours_float": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "TBD", "title": "Eautocharge Hours Float" }, "result": { "$ref": "#/components/schemas/SimulationResult" }, "start_solution": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "An array of binary values (0 or 1) representing a possible starting solution for the simulation.", "title": "Start Solution" }, "washingstart": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Can be `null` or contain an object representing the start of washing (if applicable).", "title": "Washingstart" } }, "required": [ "ac_charge", "dc_charge", "discharge_allowed", "eautocharge_hours_float", "result", "eauto_obj" ], "title": "OptimizeResponse", "type": "object" }, "PydanticDateTimeData": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "type": "number" }, { "type": "integer" }, { "type": "string" }, { "type": "null" } ] }, "type": "array" } ] }, "description": "Pydantic model for time series data with consistent value lengths.\n\nThis model validates a dictionary where:\n- Keys are strings representing data series names\n- Values are lists of numeric or string values\n- Special keys 'start_datetime' and 'interval' can contain string values\nfor time series indexing\n- All value lists must have the same length\n\nExample:\n {\n \"start_datetime\": \"2024-01-01 00:00:00\", # optional\n \"interval\": \"1 Hour\", # optional\n \"load_mean\": [20.5, 21.0, 22.1],\n \"load_min\": [18.5, 19.0, 20.1]\n }", "title": "PydanticDateTimeData", "type": "object" }, "PydanticDateTimeDataFrame": { "description": "Pydantic model for validating pandas DataFrame data with datetime index.", "properties": { "data": { "additionalProperties": { "type": "object" }, "title": "Data", "type": "object" }, "datetime_columns": { "description": "Columns to be treated as datetime", "items": { "type": "string" }, "title": "Datetime Columns", "type": "array" }, "dtypes": { "additionalProperties": { "type": "string" }, "title": "Dtypes", "type": "object" }, "tz": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Timezone for datetime values", "title": "Tz" } }, "required": [ "data" ], "title": "PydanticDateTimeDataFrame", "type": "object" }, "PydanticDateTimeSeries": { "description": "Pydantic model for validating pandas Series with datetime index in JSON format.\n\nThis model handles Series data serialized with orient='index', where the keys are\ndatetime strings and values are the series values. Provides validation and\nconversion between JSON and pandas Series with datetime index.\n\nAttributes:\n data (Dict[str, Any]): Dictionary mapping datetime strings to values.\n dtype (str): The data type of the series values.\n tz (str | None): Timezone name if the datetime index is timezone-aware.", "properties": { "data": { "title": "Data", "type": "object" }, "dtype": { "default": "float64", "title": "Dtype", "type": "string" }, "tz": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Tz" } }, "required": [ "data" ], "title": "PydanticDateTimeSeries", "type": "object" }, "SettingsEOS": { "description": "Settings for all EOS.", "properties": { "battery_capacity": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery capacity [Wh].", "title": "Battery Capacity" }, "battery_charging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery charging efficiency [%].", "title": "Battery Charging Efficiency" }, "battery_discharging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery discharging efficiency [%].", "title": "Battery Discharging Efficiency" }, "battery_initial_soc": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery initial state of charge [%].", "title": "Battery Initial Soc" }, "battery_max_charging_power": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery maximum charge power [W].", "title": "Battery Max Charging Power" }, "battery_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Battery simulation provider.", "title": "Battery Provider" }, "battery_soc_max": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery maximum state of charge [%].", "title": "Battery Soc Max" }, "battery_soc_min": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery minimum state of charge [%].", "title": "Battery Soc Min" }, "bev_capacity": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle capacity [Wh].", "title": "Bev Capacity" }, "bev_charging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery Electric Vehicle charging efficiency [%].", "title": "Bev Charging Efficiency" }, "bev_discharging_efficiency": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Battery Electric Vehicle discharging efficiency [%].", "title": "Bev Discharging Efficiency" }, "bev_initial_soc": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle initial state of charge [%].", "title": "Bev Initial Soc" }, "bev_max_charging_power": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle maximum charge power [W].", "title": "Bev Max Charging Power" }, "bev_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Battery Electric Vehicle simulation provider.", "title": "Bev Provider" }, "bev_soc_max": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Battery Electric Vehicle maximum state of charge [%].", "title": "Bev Soc Max" }, "data_cache_subpath": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "default": "cache", "description": "Sub-path for the EOS cache data directory.", "title": "Data Cache Subpath" }, "data_folder_path": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to EOS data directory.", "title": "Data Folder Path" }, "data_output_subpath": { "anyOf": [ { "format": "path", "type": "string" }, { "type": "null" } ], "default": "output", "description": "Sub-path for the EOS output data directory.", "title": "Data Output Subpath" }, "dishwasher_consumption": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Dish Washer energy consumption [Wh].", "title": "Dishwasher Consumption" }, "dishwasher_duration": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Dish Washer usage duration [h].", "title": "Dishwasher Duration" }, "dishwasher_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of Dish Washer simulation provider.", "title": "Dishwasher Provider" }, "elecprice_charges_kwh": { "anyOf": [ { "minimum": 0.0, "type": "number" }, { "type": "null" } ], "description": "Electricity price charges (\u20ac/kWh).", "title": "Elecprice Charges Kwh" }, "elecprice_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Electricity price provider id of provider to be used.", "title": "Elecprice Provider" }, "elecpriceimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import elecprice data from.", "title": "Elecpriceimport File Path" }, "elecpriceimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of electricity price forecast value lists.", "title": "Elecpriceimport Json" }, "inverter_power_max": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Inverter maximum power [W].", "title": "Inverter Power Max" }, "inverter_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Id of PV Inverter simulation provider.", "title": "Inverter Provider" }, "latitude": { "anyOf": [ { "maximum": 90.0, "minimum": -90.0, "type": "number" }, { "type": "null" } ], "description": "Latitude in decimal degrees, between -90 and 90, north is positive (ISO 19115) (\u00b0)", "title": "Latitude" }, "load_import_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import load data from.", "title": "Load Import File Path" }, "load_import_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of load forecast value lists.", "title": "Load Import Json" }, "load_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Load provider id of provider to be used.", "title": "Load Provider" }, "loadakkudoktor_year_energy": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Yearly energy consumption (kWh).", "title": "Loadakkudoktor Year Energy" }, "longitude": { "anyOf": [ { "maximum": 180.0, "minimum": -180.0, "type": "number" }, { "type": "null" } ], "description": "Longitude in decimal degrees, within -180 to 180 (\u00b0)", "title": "Longitude" }, "measurement_load0_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load0 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load0 Name" }, "measurement_load1_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load1 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load1 Name" }, "measurement_load2_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load2 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load2 Name" }, "measurement_load3_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load3 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load3 Name" }, "measurement_load4_name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Name of the load4 source (e.g. 'Household', 'Heat Pump')", "title": "Measurement Load4 Name" }, "optimization_ev_available_charge_rates_percent": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "default": [ 0.0, 0.375, 0.5, 0.625, 0.75, 0.875, 1.0 ], "description": "Charge rates available for the EV in percent of maximum charge.", "title": "Optimization Ev Available Charge Rates Percent" }, "optimization_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 24, "description": "Number of hours into the future for optimizations.", "title": "Optimization Hours" }, "optimization_penalty": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 10, "description": "Penalty factor used in optimization.", "title": "Optimization Penalty" }, "prediction_historic_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 48, "description": "Number of hours into the past for historical predictions data", "title": "Prediction Historic Hours" }, "prediction_hours": { "anyOf": [ { "minimum": 0.0, "type": "integer" }, { "type": "null" } ], "default": 48, "description": "Number of hours into the future for predictions", "title": "Prediction Hours" }, "pvforecast0_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast0 Albedo" }, "pvforecast0_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast0 Inverter Model" }, "pvforecast0_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast0 Inverter Paco" }, "pvforecast0_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Sum of PV system losses in percent", "title": "Pvforecast0 Loss" }, "pvforecast0_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast0 Module Model" }, "pvforecast0_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast0 Modules Per String" }, "pvforecast0_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast0 Mountingplace" }, "pvforecast0_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast0 Optimal Surface Tilt" }, "pvforecast0_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast0 Optimalangles" }, "pvforecast0_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast0 Peakpower" }, "pvforecast0_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast0 Pvtechchoice" }, "pvforecast0_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast0 Strings Per Inverter" }, "pvforecast0_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast0 Surface Azimuth" }, "pvforecast0_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast0 Surface Tilt" }, "pvforecast0_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast0 Trackingtype" }, "pvforecast0_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast0 Userhorizon" }, "pvforecast1_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast1 Albedo" }, "pvforecast1_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast1 Inverter Model" }, "pvforecast1_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast1 Inverter Paco" }, "pvforecast1_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast1 Loss" }, "pvforecast1_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast1 Module Model" }, "pvforecast1_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast1 Modules Per String" }, "pvforecast1_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast1 Mountingplace" }, "pvforecast1_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast1 Optimal Surface Tilt" }, "pvforecast1_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast1 Optimalangles" }, "pvforecast1_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast1 Peakpower" }, "pvforecast1_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast1 Pvtechchoice" }, "pvforecast1_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast1 Strings Per Inverter" }, "pvforecast1_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast1 Surface Azimuth" }, "pvforecast1_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast1 Surface Tilt" }, "pvforecast1_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast1 Trackingtype" }, "pvforecast1_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast1 Userhorizon" }, "pvforecast2_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast2 Albedo" }, "pvforecast2_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast2 Inverter Model" }, "pvforecast2_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast2 Inverter Paco" }, "pvforecast2_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast2 Loss" }, "pvforecast2_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast2 Module Model" }, "pvforecast2_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast2 Modules Per String" }, "pvforecast2_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast2 Mountingplace" }, "pvforecast2_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast2 Optimal Surface Tilt" }, "pvforecast2_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast2 Optimalangles" }, "pvforecast2_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast2 Peakpower" }, "pvforecast2_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast2 Pvtechchoice" }, "pvforecast2_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast2 Strings Per Inverter" }, "pvforecast2_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast2 Surface Azimuth" }, "pvforecast2_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast2 Surface Tilt" }, "pvforecast2_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast2 Trackingtype" }, "pvforecast2_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast2 Userhorizon" }, "pvforecast3_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast3 Albedo" }, "pvforecast3_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast3 Inverter Model" }, "pvforecast3_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast3 Inverter Paco" }, "pvforecast3_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast3 Loss" }, "pvforecast3_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast3 Module Model" }, "pvforecast3_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast3 Modules Per String" }, "pvforecast3_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast3 Mountingplace" }, "pvforecast3_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast3 Optimal Surface Tilt" }, "pvforecast3_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast3 Optimalangles" }, "pvforecast3_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast3 Peakpower" }, "pvforecast3_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast3 Pvtechchoice" }, "pvforecast3_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast3 Strings Per Inverter" }, "pvforecast3_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast3 Surface Azimuth" }, "pvforecast3_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast3 Surface Tilt" }, "pvforecast3_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast3 Trackingtype" }, "pvforecast3_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast3 Userhorizon" }, "pvforecast4_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast4 Albedo" }, "pvforecast4_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast4 Inverter Model" }, "pvforecast4_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast4 Inverter Paco" }, "pvforecast4_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast4 Loss" }, "pvforecast4_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast4 Module Model" }, "pvforecast4_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast4 Modules Per String" }, "pvforecast4_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast4 Mountingplace" }, "pvforecast4_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast4 Optimal Surface Tilt" }, "pvforecast4_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast4 Optimalangles" }, "pvforecast4_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast4 Peakpower" }, "pvforecast4_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast4 Pvtechchoice" }, "pvforecast4_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast4 Strings Per Inverter" }, "pvforecast4_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast4 Surface Azimuth" }, "pvforecast4_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast4 Surface Tilt" }, "pvforecast4_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast4 Trackingtype" }, "pvforecast4_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast4 Userhorizon" }, "pvforecast5_albedo": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Proportion of the light hitting the ground that it reflects back.", "title": "Pvforecast5 Albedo" }, "pvforecast5_inverter_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the inverter of this plane.", "title": "Pvforecast5 Inverter Model" }, "pvforecast5_inverter_paco": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "AC power rating of the inverter. [W]", "title": "Pvforecast5 Inverter Paco" }, "pvforecast5_loss": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": 0, "description": "Sum of PV system losses in percent", "title": "Pvforecast5 Loss" }, "pvforecast5_module_model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Model of the PV modules of this plane.", "title": "Pvforecast5 Module Model" }, "pvforecast5_modules_per_string": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the PV modules of the strings of this plane.", "title": "Pvforecast5 Modules Per String" }, "pvforecast5_mountingplace": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "free", "description": "Type of mounting for PV system. Options are 'free' for free-standing and 'building' for building-integrated.", "title": "Pvforecast5 Mountingplace" }, "pvforecast5_optimal_surface_tilt": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt angle. Ignored for two-axis tracking.", "title": "Pvforecast5 Optimal Surface Tilt" }, "pvforecast5_optimalangles": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Calculate the optimum tilt and azimuth angles. Ignored for two-axis tracking.", "title": "Pvforecast5 Optimalangles" }, "pvforecast5_peakpower": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Nominal power of PV system in kW.", "title": "Pvforecast5 Peakpower" }, "pvforecast5_pvtechchoice": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "crystSi", "description": "PV technology. One of 'crystSi', 'CIS', 'CdTe', 'Unknown'.", "title": "Pvforecast5 Pvtechchoice" }, "pvforecast5_strings_per_inverter": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Number of the strings of the inverter of this plane.", "title": "Pvforecast5 Strings Per Inverter" }, "pvforecast5_surface_azimuth": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Orientation (azimuth angle) of the (fixed) plane. Clockwise from north (north=0, east=90, south=180, west=270).", "title": "Pvforecast5 Surface Azimuth" }, "pvforecast5_surface_tilt": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Tilt angle from horizontal plane. Ignored for two-axis tracking.", "title": "Pvforecast5 Surface Tilt" }, "pvforecast5_trackingtype": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Type of suntracking. 0=fixed, 1=single horizontal axis aligned north-south, 2=two-axis tracking, 3=vertical axis tracking, 4=single horizontal axis aligned east-west, 5=single inclined axis aligned north-south.", "title": "Pvforecast5 Trackingtype" }, "pvforecast5_userhorizon": { "anyOf": [ { "items": { "type": "number" }, "type": "array" }, { "type": "null" } ], "description": "Elevation of horizon in degrees, at equally spaced azimuth clockwise from north.", "title": "Pvforecast5 Userhorizon" }, "pvforecast_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "PVForecast provider id of provider to be used.", "title": "Pvforecast Provider" }, "pvforecastimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import PV forecast data from.", "title": "Pvforecastimport File Path" }, "pvforecastimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of PV forecast value lists.", "title": "Pvforecastimport Json" }, "server_fastapi_host": { "anyOf": [ { "format": "ipvanyaddress", "type": "string" }, { "type": "null" } ], "default": "0.0.0.0", "description": "FastAPI server IP address.", "title": "Server Fastapi Host" }, "server_fastapi_port": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 8503, "description": "FastAPI server IP port number.", "title": "Server Fastapi Port" }, "server_fastapi_startup_server_fasthtml": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": true, "description": "FastAPI server to startup application FastHTML server.", "title": "Server Fastapi Startup Server Fasthtml" }, "server_fastapi_verbose": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "description": "Enable debug output", "title": "Server Fastapi Verbose" }, "server_fasthtml_host": { "anyOf": [ { "format": "ipvanyaddress", "type": "string" }, { "type": "null" } ], "default": "0.0.0.0", "description": "FastHTML server IP address.", "title": "Server Fasthtml Host" }, "server_fasthtml_port": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 8504, "description": "FastHTML server IP port number.", "title": "Server Fasthtml Port" }, "weather_provider": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Weather provider id of provider to be used.", "title": "Weather Provider" }, "weatherimport_file_path": { "anyOf": [ { "type": "string" }, { "format": "path", "type": "string" }, { "type": "null" } ], "description": "Path to the file to import weather data from.", "title": "Weatherimport File Path" }, "weatherimport_json": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "JSON string, dictionary of weather forecast value lists.", "title": "Weatherimport Json" } }, "title": "SettingsEOS", "type": "object" }, "SimulationResult": { "description": "This object contains the results of the simulation and provides insights into various parameters over the entire forecast period.", "properties": { "EAuto_SoC_pro_Stunde": { "description": "The state of charge of the EV for each hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Eauto Soc Pro Stunde", "type": "array" }, "Einnahmen_Euro_pro_Stunde": { "description": "The revenue from grid feed-in or other sources in euros per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Einnahmen Euro Pro Stunde", "type": "array" }, "Electricity_price": { "description": "Used Electricity Price, including predictions", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Electricity Price", "type": "array" }, "Gesamt_Verluste": { "description": "The total losses in watt-hours over the entire period.", "title": "Gesamt Verluste", "type": "number" }, "Gesamtbilanz_Euro": { "description": "The total balance of revenues minus costs in euros.", "title": "Gesamtbilanz Euro", "type": "number" }, "Gesamteinnahmen_Euro": { "description": "The total revenues in euros.", "title": "Gesamteinnahmen Euro", "type": "number" }, "Gesamtkosten_Euro": { "description": "The total costs in euros.", "title": "Gesamtkosten Euro", "type": "number" }, "Home_appliance_wh_per_hour": { "description": "The energy consumption of a household appliance in watt-hours per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Home Appliance Wh Per Hour", "type": "array" }, "Kosten_Euro_pro_Stunde": { "description": "The costs in euros per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Kosten Euro Pro Stunde", "type": "array" }, "Last_Wh_pro_Stunde": { "description": "TBD", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Last Wh Pro Stunde", "type": "array" }, "Netzbezug_Wh_pro_Stunde": { "description": "The grid energy drawn in watt-hours per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Netzbezug Wh Pro Stunde", "type": "array" }, "Netzeinspeisung_Wh_pro_Stunde": { "description": "The energy fed into the grid in watt-hours per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Netzeinspeisung Wh Pro Stunde", "type": "array" }, "Verluste_Pro_Stunde": { "description": "The losses in watt-hours per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Verluste Pro Stunde", "type": "array" }, "akku_soc_pro_stunde": { "description": "The state of charge of the battery (not the EV) in percentage per hour.", "items": { "anyOf": [ { "type": "number" }, { "type": "null" } ] }, "title": "Akku Soc Pro Stunde", "type": "array" } }, "required": [ "Last_Wh_pro_Stunde", "EAuto_SoC_pro_Stunde", "Einnahmen_Euro_pro_Stunde", "Gesamt_Verluste", "Gesamtbilanz_Euro", "Gesamteinnahmen_Euro", "Gesamtkosten_Euro", "Home_appliance_wh_per_hour", "Kosten_Euro_pro_Stunde", "Netzbezug_Wh_pro_Stunde", "Netzeinspeisung_Wh_pro_Stunde", "Verluste_Pro_Stunde", "akku_soc_pro_stunde", "Electricity_price" ], "title": "SimulationResult", "type": "object" }, "SolarPanelBatteryParameters": { "properties": { "capacity_wh": { "description": "An integer representing the capacity of the battery in watt-hours.", "exclusiveMinimum": 0.0, "title": "Capacity Wh", "type": "integer" }, "charging_efficiency": { "default": 0.88, "description": "A float representing the charging efficiency of the battery.", "exclusiveMinimum": 0.0, "maximum": 1.0, "title": "Charging Efficiency", "type": "number" }, "discharging_efficiency": { "default": 0.88, "description": "A float representing the discharge efficiency of the battery.", "exclusiveMinimum": 0.0, "maximum": 1.0, "title": "Discharging Efficiency", "type": "number" }, "initial_soc_percentage": { "default": 0, "description": "An integer representing the state of charge of the battery at the **start** of the current hour (not the current state).", "maximum": 100.0, "minimum": 0.0, "title": "Initial Soc Percentage", "type": "integer" }, "max_charge_power_w": { "anyOf": [ { "exclusiveMinimum": 0.0, "type": "number" }, { "type": "null" } ], "default": 5000, "description": "Maximum charging power in watts.", "title": "Max Charge Power W" }, "max_soc_percentage": { "default": 100, "description": "An integer representing the maximum state of charge (SOC) of the battery in percentage.", "maximum": 100.0, "minimum": 0.0, "title": "Max Soc Percentage", "type": "integer" }, "min_soc_percentage": { "default": 0, "description": "An integer representing the minimum state of charge (SOC) of the battery in percentage.", "maximum": 100.0, "minimum": 0.0, "title": "Min Soc Percentage", "type": "integer" } }, "required": [ "capacity_wh" ], "title": "SolarPanelBatteryParameters", "type": "object" }, "ValidationError": { "properties": { "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "title": "Location", "type": "array" }, "msg": { "title": "Message", "type": "string" }, "type": { "title": "Error Type", "type": "string" } }, "required": [ "loc", "msg", "type" ], "title": "ValidationError", "type": "object" } } }, "info": { "description": "This project provides a comprehensive solution for simulating and optimizing an energy system based on renewable energy sources. With a focus on photovoltaic (PV) systems, battery storage (batteries), load management (consumer requirements), heat pumps, electric vehicles, and consideration of electricity price data, this system enables forecasting and optimization of energy flow and costs over a specified period.", "title": "Akkudoktor-EOS", "version": "0.0.1" }, "openapi": "3.1.0", "paths": { "/gesamtlast": { "post": { "description": "Deprecated: Total Load Prediction with adjustment.\n\nEndpoint to handle total load prediction adjusted by latest measured data.\n\nNote:\n Use '/v1/prediction/list?key=load_mean_adjusted' instead.\n Load energy meter readings to be added to EOS measurement by:\n '/v1/measurement/load-mr/value/by-name' or\n '/v1/measurement/value'", "operationId": "fastapi_gesamtlast_gesamtlast_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GesamtlastRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "number" }, "title": "Response Fastapi Gesamtlast Gesamtlast Post", "type": "array" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Gesamtlast" } }, "/gesamtlast_simple": { "get": { "description": "Deprecated: Total Load Prediction.\n\nEndpoint to handle total load prediction.\n\nNote:\n Set LoadAkkudoktor as load_provider, then update data with\n '/v1/prediction/update'\n and then request data with\n '/v1/prediction/list?key=load_mean' instead.", "operationId": "fastapi_gesamtlast_simple_gesamtlast_simple_get", "parameters": [ { "in": "query", "name": "year_energy", "required": true, "schema": { "title": "Year Energy", "type": "number" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "number" }, "title": "Response Fastapi Gesamtlast Simple Gesamtlast Simple Get", "type": "array" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Gesamtlast Simple" } }, "/optimize": { "post": { "operationId": "fastapi_optimize_optimize_post", "parameters": [ { "description": "Defaults to current hour of the day.", "in": "query", "name": "start_hour", "required": false, "schema": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "description": "Defaults to current hour of the day.", "title": "Start Hour" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OptimizationParameters" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OptimizeResponse" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Optimize" } }, "/pvforecast": { "get": { "description": "Deprecated: PV Forecast Prediction.\n\nEndpoint to handle PV forecast prediction.\n\nNote:\n Set PVForecastAkkudoktor as pvforecast_provider, then update data with\n '/v1/prediction/update'\n and then request data with\n '/v1/prediction/list?key=pvforecast_ac_power' and\n '/v1/prediction/list?key=pvforecastakkudoktor_temp_air' instead.", "operationId": "fastapi_pvforecast_pvforecast_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ForecastResponse" } } }, "description": "Successful Response" } }, "summary": "Fastapi Pvforecast" } }, "/strompreis": { "get": { "description": "Deprecated: Electricity Market Price Prediction per Wh (\u20ac/Wh).\n\nNote:\n Set ElecPriceAkkudoktor as elecprice_provider, then update data with\n '/v1/prediction/update'\n and then request data with\n '/v1/prediction/list?key=elecprice_marketprice_wh' or\n '/v1/prediction/list?key=elecprice_marketprice_kwh' instead.", "operationId": "fastapi_strompreis_strompreis_get", "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "number" }, "title": "Response Fastapi Strompreis Strompreis Get", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Fastapi Strompreis" } }, "/v1/config": { "get": { "description": "Get the current configuration.", "operationId": "fastapi_config_get_v1_config_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigEOS" } } }, "description": "Successful Response" } }, "summary": "Fastapi Config Get" }, "put": { "description": "Merge settings into current configuration.\n\nArgs:\n settings (SettingsEOS): The settings to merge into the current configuration.\n save (Optional[bool]): Save the resulting configuration to the configuration file.\n Defaults to False.", "operationId": "fastapi_config_put_v1_config_put", "parameters": [ { "in": "query", "name": "save", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Save" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SettingsEOS" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigEOS" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Config Put" } }, "/v1/measurement/data": { "put": { "description": "Merge the measurement data given as datetime data into EOS measurements.", "operationId": "fastapi_measurement_data_put_v1_measurement_data_put", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeData" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Data Put" } }, "/v1/measurement/dataframe": { "put": { "description": "Merge the measurement data given as dataframe into EOS measurements.", "operationId": "fastapi_measurement_dataframe_put_v1_measurement_dataframe_put", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeDataFrame" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Dataframe Put" } }, "/v1/measurement/keys": { "get": { "description": "Get a list of available measurement keys.", "operationId": "fastapi_measurement_keys_get_v1_measurement_keys_get", "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "title": "Response Fastapi Measurement Keys Get V1 Measurement Keys Get", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Fastapi Measurement Keys Get" } }, "/v1/measurement/load-mr/series/by-name": { "get": { "description": "Get the meter reading of given load name as series.", "operationId": "fastapi_measurement_load_mr_series_by_name_get_v1_measurement_load_mr_series_by_name_get", "parameters": [ { "description": "Load name.", "in": "query", "name": "name", "required": true, "schema": { "description": "Load name.", "title": "Name", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Load Mr Series By Name Get" }, "put": { "description": "Merge the meter readings series of given load name into EOS measurements at given datetime.", "operationId": "fastapi_measurement_load_mr_series_by_name_put_v1_measurement_load_mr_series_by_name_put", "parameters": [ { "description": "Load name.", "in": "query", "name": "name", "required": true, "schema": { "description": "Load name.", "title": "Name", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Load Mr Series By Name Put" } }, "/v1/measurement/load-mr/value/by-name": { "put": { "description": "Merge the meter reading of given load name and value into EOS measurements at given datetime.", "operationId": "fastapi_measurement_load_mr_value_by_name_put_v1_measurement_load_mr_value_by_name_put", "parameters": [ { "description": "Datetime.", "in": "query", "name": "datetime", "required": true, "schema": { "description": "Datetime.", "title": "Datetime", "type": "string" } }, { "description": "Load name.", "in": "query", "name": "name", "required": true, "schema": { "description": "Load name.", "title": "Name", "type": "string" } }, { "in": "query", "name": "value", "required": true, "schema": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "title": "Value" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Load Mr Value By Name Put" } }, "/v1/measurement/series": { "get": { "description": "Get the measurements of given key as series.", "operationId": "fastapi_measurement_series_get_v1_measurement_series_get", "parameters": [ { "description": "Prediction key.", "in": "query", "name": "key", "required": true, "schema": { "description": "Prediction key.", "title": "Key", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Series Get" }, "put": { "description": "Merge measurement given as series into given key.", "operationId": "fastapi_measurement_series_put_v1_measurement_series_put", "parameters": [ { "description": "Prediction key.", "in": "query", "name": "key", "required": true, "schema": { "description": "Prediction key.", "title": "Key", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Series Put" } }, "/v1/measurement/value": { "put": { "description": "Merge the measurement of given key and value into EOS measurements at given datetime.", "operationId": "fastapi_measurement_value_put_v1_measurement_value_put", "parameters": [ { "description": "Datetime.", "in": "query", "name": "datetime", "required": true, "schema": { "description": "Datetime.", "title": "Datetime", "type": "string" } }, { "description": "Prediction key.", "in": "query", "name": "key", "required": true, "schema": { "description": "Prediction key.", "title": "Key", "type": "string" } }, { "in": "query", "name": "value", "required": true, "schema": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "title": "Value" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Measurement Value Put" } }, "/v1/prediction/keys": { "get": { "description": "Get a list of available prediction keys.", "operationId": "fastapi_prediction_keys_get_v1_prediction_keys_get", "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "title": "Response Fastapi Prediction Keys Get V1 Prediction Keys Get", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Fastapi Prediction Keys Get" } }, "/v1/prediction/list": { "get": { "description": "Get prediction for given key within given date range as value list.\n\nArgs:\n key (str): Prediction key\n start_datetime (Optional[str]): Starting datetime (inclusive).\n Defaults to start datetime of latest prediction.\n end_datetime (Optional[str]: Ending datetime (exclusive).\n Defaults to end datetime of latest prediction.\n interval (Optional[str]): Time duration for each interval.\n Defaults to 1 hour.", "operationId": "fastapi_prediction_list_get_v1_prediction_list_get", "parameters": [ { "description": "Prediction key.", "in": "query", "name": "key", "required": true, "schema": { "description": "Prediction key.", "title": "Key", "type": "string" } }, { "description": "Starting datetime (inclusive).", "in": "query", "name": "start_datetime", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Starting datetime (inclusive).", "title": "Start Datetime" } }, { "description": "Ending datetime (exclusive).", "in": "query", "name": "end_datetime", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Ending datetime (exclusive).", "title": "End Datetime" } }, { "description": "Time duration for each interval.", "in": "query", "name": "interval", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Time duration for each interval.", "title": "Interval" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": {}, "title": "Response Fastapi Prediction List Get V1 Prediction List Get", "type": "array" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Prediction List Get" } }, "/v1/prediction/series": { "get": { "description": "Get prediction for given key within given date range as series.\n\nArgs:\n key (str): Prediction key\n start_datetime (Optional[str]): Starting datetime (inclusive).\n Defaults to start datetime of latest prediction.\n end_datetime (Optional[str]: Ending datetime (exclusive).\n Defaults to end datetime of latest prediction.", "operationId": "fastapi_prediction_series_get_v1_prediction_series_get", "parameters": [ { "description": "Prediction key.", "in": "query", "name": "key", "required": true, "schema": { "description": "Prediction key.", "title": "Key", "type": "string" } }, { "description": "Starting datetime (inclusive).", "in": "query", "name": "start_datetime", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Starting datetime (inclusive).", "title": "Start Datetime" } }, { "description": "Ending datetime (exclusive).", "in": "query", "name": "end_datetime", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Ending datetime (exclusive).", "title": "End Datetime" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PydanticDateTimeSeries" } } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Prediction Series Get" } }, "/v1/prediction/update": { "post": { "description": "Update predictions for all providers.\n\nArgs:\n force_update: Update data even if it is already cached.\n Defaults to False.\n force_enable: Update data even if provider is disabled.\n Defaults to False.", "operationId": "fastapi_prediction_update_v1_prediction_update_post", "parameters": [ { "in": "query", "name": "force_update", "required": false, "schema": { "default": false, "title": "Force Update", "type": "boolean" } }, { "in": "query", "name": "force_enable", "required": false, "schema": { "default": false, "title": "Force Enable", "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Prediction Update" } }, "/v1/prediction/update/{provider_id}": { "post": { "description": "Update predictions for given provider ID.\n\nArgs:\n provider_id: ID of provider to update.\n force_update: Update data even if it is already cached.\n Defaults to False.\n force_enable: Update data even if provider is disabled.\n Defaults to False.", "operationId": "fastapi_prediction_update_provider_v1_prediction_update__provider_id__post", "parameters": [ { "in": "path", "name": "provider_id", "required": true, "schema": { "title": "Provider Id", "type": "string" } }, { "in": "query", "name": "force_update", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "title": "Force Update" } }, { "in": "query", "name": "force_enable", "required": false, "schema": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": false, "title": "Force Enable" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" }, "422": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } }, "description": "Validation Error" } }, "summary": "Fastapi Prediction Update Provider" } }, "/visualization_results.pdf": { "get": { "operationId": "get_pdf_visualization_results_pdf_get", "responses": { "200": { "content": { "application/pdf": { "schema": { "type": "string" } } }, "description": "Successful Response" } }, "summary": "Get Pdf" } } } }