pyrc.core.settings#

class Settings(calculate_static, use_weather_data, wall: ~pyrc.core.wall.Wall = <pyrc.core.wall.Wall object>, start_date='2022-01-01T00:00:00', weather_data_path=None, maximum_area_specific_power=400, save_folder_path=None, save_all_x_seconds=25, solve_settings: ~pyrc.core.settings.SolveSettings | ~typing.Any = None)#

Bases: object

Class for composition. Every object can get the same object of this class to determine global settings.

In the future a settings yaml could be used and loaded in.

property area_specific_radiation_interpolator_long: Callable | Any#
property area_specific_radiation_interpolator_short: Callable | Any#
property save_folder_path#
property start_date: str#
property start_shift#
property use_weather_data: bool#
property weather_data_path: str | None#
class SolveSettings(max_saved_steps=50000.0, method='RK45', max_step=0.4, rtol=1e-07, atol=0.01, save_interval=1, minimize_ram_usage=True)#

Bases: object

Parameters:
  • max_saved_steps (int, optional) – The maximum number of seconds that are simulated in one solve_ivp call. Defines the batch size.

  • method (str, optional) – The method of the solver. See solve_ivp

  • max_step (int | float, optional) – The maximum number of seconds that the solver can use as one step.

  • rtol (float or array_like, optional) – Relative and absolute tolerances. The solver keeps the local error estimates less than atol + rtol * abs(y). Here rtol controls a relative accuracy (number of correct digits), while atol controls absolute accuracy (number of correct decimal places). To achieve the desired rtol, set atol to be smaller than the smallest value that can be expected from rtol * abs(y) so that rtol dominates the allowable error. If atol is larger than rtol * abs(y) the number of correct digits is not guaranteed. Conversely, to achieve the desired atol set rtol such that rtol * abs(y) is always smaller than atol. If components of y have different scales, it might be beneficial to set different atol values for different components by passing array_like with shape (n,) for atol. Default values are 1e-3 for rtol and 1e-6 for atol. [Copied from scipy.solve_ivp doc]

  • atol (float or array_like, optional) – Relative and absolute tolerances. The solver keeps the local error estimates less than atol + rtol * abs(y). Here rtol controls a relative accuracy (number of correct digits), while atol controls absolute accuracy (number of correct decimal places). To achieve the desired rtol, set atol to be smaller than the smallest value that can be expected from rtol * abs(y) so that rtol dominates the allowable error. If atol is larger than rtol * abs(y) the number of correct digits is not guaranteed. Conversely, to achieve the desired atol set rtol such that rtol * abs(y) is always smaller than atol. If components of y have different scales, it might be beneficial to set different atol values for different components by passing array_like with shape (n,) for atol. Default values are 1e-3 for rtol and 1e-6 for atol. [Copied from scipy.solve_ivp doc]

  • save_interval (int, optional) – In which interval the solution should be saved. One interval is as long as max_saved_steps.

  • minimize_ram_usage (bool, optional) – If True and a save_path is given to the RCNetwork it occasionally deletes the solution after saving to disk to free RAM.

__init__(max_saved_steps=50000.0, method='RK45', max_step=0.4, rtol=1e-07, atol=0.01, save_interval=1, minimize_ram_usage=True)#
Parameters:
  • max_saved_steps (int, optional) – The maximum number of seconds that are simulated in one solve_ivp call. Defines the batch size.

  • method (str, optional) – The method of the solver. See solve_ivp

  • max_step (int | float, optional) – The maximum number of seconds that the solver can use as one step.

  • rtol (float or array_like, optional) – Relative and absolute tolerances. The solver keeps the local error estimates less than atol + rtol * abs(y). Here rtol controls a relative accuracy (number of correct digits), while atol controls absolute accuracy (number of correct decimal places). To achieve the desired rtol, set atol to be smaller than the smallest value that can be expected from rtol * abs(y) so that rtol dominates the allowable error. If atol is larger than rtol * abs(y) the number of correct digits is not guaranteed. Conversely, to achieve the desired atol set rtol such that rtol * abs(y) is always smaller than atol. If components of y have different scales, it might be beneficial to set different atol values for different components by passing array_like with shape (n,) for atol. Default values are 1e-3 for rtol and 1e-6 for atol. [Copied from scipy.solve_ivp doc]

  • atol (float or array_like, optional) – Relative and absolute tolerances. The solver keeps the local error estimates less than atol + rtol * abs(y). Here rtol controls a relative accuracy (number of correct digits), while atol controls absolute accuracy (number of correct decimal places). To achieve the desired rtol, set atol to be smaller than the smallest value that can be expected from rtol * abs(y) so that rtol dominates the allowable error. If atol is larger than rtol * abs(y) the number of correct digits is not guaranteed. Conversely, to achieve the desired atol set rtol such that rtol * abs(y) is always smaller than atol. If components of y have different scales, it might be beneficial to set different atol values for different components by passing array_like with shape (n,) for atol. Default values are 1e-3 for rtol and 1e-6 for atol. [Copied from scipy.solve_ivp doc]

  • save_interval (int, optional) – In which interval the solution should be saved. One interval is as long as max_saved_steps.

  • minimize_ram_usage (bool, optional) – If True and a save_path is given to the RCNetwork it occasionally deletes the solution after saving to disk to free RAM.

property dict#
property keys#
property values#