open-fdd 0.1.8__py3-none-any.whl → 0.1.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. open_fdd/air_handling_unit/faults/__init__.py +30 -1487
  2. open_fdd/air_handling_unit/faults/fault_condition_eight.py +135 -0
  3. open_fdd/air_handling_unit/faults/fault_condition_eleven.py +108 -0
  4. open_fdd/air_handling_unit/faults/fault_condition_fifteen.py +189 -0
  5. open_fdd/air_handling_unit/faults/fault_condition_five.py +126 -0
  6. open_fdd/air_handling_unit/faults/fault_condition_four.py +128 -0
  7. open_fdd/air_handling_unit/faults/fault_condition_fourteen.py +177 -0
  8. open_fdd/air_handling_unit/faults/fault_condition_nine.py +140 -0
  9. open_fdd/air_handling_unit/faults/fault_condition_one.py +113 -0
  10. open_fdd/air_handling_unit/faults/fault_condition_seven.py +106 -0
  11. open_fdd/air_handling_unit/faults/fault_condition_six.py +228 -0
  12. open_fdd/air_handling_unit/faults/fault_condition_sixteen.py +196 -0
  13. open_fdd/air_handling_unit/faults/fault_condition_ten.py +119 -0
  14. open_fdd/air_handling_unit/faults/fault_condition_thirteen.py +139 -0
  15. open_fdd/air_handling_unit/faults/fault_condition_three.py +112 -0
  16. open_fdd/air_handling_unit/faults/fault_condition_twelve.py +164 -0
  17. open_fdd/air_handling_unit/faults/fault_condition_two.py +112 -0
  18. open_fdd/air_handling_unit/faults/helper_utils.py +29 -19
  19. open_fdd/air_handling_unit/reports/__init__.py +6 -4
  20. open_fdd/air_handling_unit/reports/fault_report.py +3 -2
  21. open_fdd/chiller_plant/faults/__init__.py +6 -2279
  22. open_fdd/chiller_plant/faults/fault_condition_one.py +113 -0
  23. open_fdd/chiller_plant/faults/fault_condition_two.py +100 -0
  24. open_fdd/tests/ahu/test_ahu_fc1.py +2 -2
  25. open_fdd/tests/ahu/test_ahu_fc10.py +1 -0
  26. open_fdd/tests/ahu/test_ahu_fc11.py +3 -4
  27. open_fdd/tests/ahu/test_ahu_fc12.py +3 -4
  28. open_fdd/tests/ahu/test_ahu_fc13.py +3 -4
  29. open_fdd/tests/ahu/test_ahu_fc14.py +3 -4
  30. open_fdd/tests/ahu/test_ahu_fc15.py +3 -4
  31. open_fdd/tests/ahu/test_ahu_fc16.py +4 -3
  32. open_fdd/tests/ahu/test_ahu_fc2.py +1 -0
  33. open_fdd/tests/ahu/test_ahu_fc3.py +1 -0
  34. open_fdd/tests/ahu/test_ahu_fc4.py +3 -1
  35. open_fdd/tests/ahu/test_ahu_fc5.py +1 -0
  36. open_fdd/tests/ahu/test_ahu_fc6.py +1 -0
  37. open_fdd/tests/ahu/test_ahu_fc7.py +1 -0
  38. open_fdd/tests/ahu/test_ahu_fc8.py +1 -0
  39. open_fdd/tests/ahu/test_ahu_fc9.py +1 -0
  40. open_fdd/tests/chiller/test_chiller_fc1.py +2 -2
  41. open_fdd/tests/chiller/test_chiller_fc2.py +2 -2
  42. {open_fdd-0.1.8.dist-info → open_fdd-0.1.9.dist-info}/METADATA +4 -3
  43. open_fdd-0.1.9.dist-info/RECORD +52 -0
  44. {open_fdd-0.1.8.dist-info → open_fdd-0.1.9.dist-info}/WHEEL +1 -1
  45. open_fdd/air_handling_unit/faults/fault_condition.py +0 -69
  46. open_fdd/air_handling_unit/faults/shared_utils.py +0 -90
  47. open_fdd-0.1.8.dist-info/RECORD +0 -36
  48. {open_fdd-0.1.8.dist-info → open_fdd-0.1.9.dist-info/licenses}/LICENSE +0 -0
  49. {open_fdd-0.1.8.dist-info → open_fdd-0.1.9.dist-info}/top_level.txt +0 -0
@@ -1,90 +0,0 @@
1
- import pandas as pd
2
- import pandas.api.types as pdtypes
3
- import sys
4
-
5
-
6
- class SharedUtils:
7
- @staticmethod
8
- def float_int_check_err(col):
9
- err_str = " column failed with a check that the data is a float"
10
- return str(col) + err_str
11
-
12
- @staticmethod
13
- def float_max_check_err(col):
14
- err_str = (
15
- " column failed with a check that the data is a float between 0.0 and 1.0"
16
- )
17
- return str(col) + err_str
18
-
19
- @staticmethod
20
- def isfloat(num):
21
- try:
22
- float(num)
23
- return True
24
- except:
25
- return False
26
-
27
- @staticmethod
28
- def isLessThanOnePointOne(num):
29
- try:
30
- if num <= 1.0:
31
- return True
32
- except:
33
- return False
34
-
35
- @staticmethod
36
- def convert_to_float(df, col):
37
- if not pdtypes.is_float_dtype(df[col]):
38
- try:
39
- df[col] = df[col].astype(float)
40
- except ValueError:
41
- raise TypeError(SharedUtils.float_int_check_err(col))
42
- return df
43
-
44
- @staticmethod
45
- def apply_rolling_average_if_needed(df, freq="1min", rolling_window="5min"):
46
- """Apply rolling average if time difference between consecutive
47
- timestamps is not greater than the specified frequency.
48
- """
49
-
50
- print(
51
- "Warning: If data has a one minute or less sampling \n"
52
- "frequency a rolling average will be automatically applied"
53
- )
54
-
55
- sys.stdout.flush()
56
-
57
- time_diff = df.index.to_series().diff().iloc[1:]
58
-
59
- # Calculate median time difference to avoid being affected by outliers
60
- median_diff = time_diff.median()
61
-
62
- print(
63
- f"Warning: Median time difference between consecutive timestamps is {median_diff}."
64
- )
65
- sys.stdout.flush()
66
-
67
- if median_diff > pd.Timedelta(freq):
68
- print(f"Warning: Skipping any rolling averaging...")
69
- sys.stdout.flush()
70
-
71
- else:
72
- df = df.rolling(rolling_window).mean()
73
- print(
74
- f"Warning: A {rolling_window} rolling average has been applied to the data."
75
- )
76
- sys.stdout.flush()
77
- return df
78
-
79
- @staticmethod
80
- def clean_nan_values(df: pd.DataFrame) -> pd.DataFrame:
81
- for col in df.columns:
82
- if df[col].isnull().any():
83
- print(f"NaN values found in column: {col}")
84
-
85
- # Remove rows with any NaN values, then forward and backfill
86
- df = df.dropna().ffill().bfill()
87
- print("DataFrame has been cleaned for NaNs")
88
- print("and has also been forward and backfilled.")
89
- sys.stdout.flush()
90
- return df
@@ -1,36 +0,0 @@
1
- open_fdd/__init__.py,sha256=iGj8QTOZJUTE4nNnBiCHXEXsOdV6YvKcGiLrnOusJCg,1411
2
- open_fdd/air_handling_unit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- open_fdd/air_handling_unit/faults/__init__.py,sha256=rJwnOYO0Ix0mPXg4KEghC3vvNTDnBiRwS-myEa8-bgI,64124
4
- open_fdd/air_handling_unit/faults/fault_condition.py,sha256=UN2_k2AZWMDoO4oPAnJW3fvhkHlMkLXZikzU2lXAOuQ,2364
5
- open_fdd/air_handling_unit/faults/helper_utils.py,sha256=el_s2BC9Q14GXUGnazOiBBhzVUMsPBP9sxEG1UIQ6Gw,12668
6
- open_fdd/air_handling_unit/faults/shared_utils.py,sha256=rAx27IsG_7OEHLLFHool6o9LAuaMyYisit9gLu8ZVQk,2802
7
- open_fdd/air_handling_unit/reports/__init__.py,sha256=JccL19Spj6vE0Jo_57CmZEFucu4WbCPj1-pIwR5LmPg,40741
8
- open_fdd/air_handling_unit/reports/fault_report.py,sha256=QxYLJzoLTwf1N0nls2XMmhHJvBSgGCBNT0KxA59QG4Y,1442
9
- open_fdd/chiller_plant/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- open_fdd/chiller_plant/faults/__init__.py,sha256=RVoyleGYpMOg_pkwyaHCNuiMRVvvPnGvAYLFMr-jAWY,92796
11
- open_fdd/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- open_fdd/tests/ahu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- open_fdd/tests/ahu/test_ahu_fc1.py,sha256=Pw5XlQ19c5Sit0Lyuor8L8lKgxl5PFn4UhruIHyKDfc,5439
14
- open_fdd/tests/ahu/test_ahu_fc10.py,sha256=niYL7fi6OlgP0wnF8hNh9A07PLzHiRZkyRkrA1zoL2s,4577
15
- open_fdd/tests/ahu/test_ahu_fc11.py,sha256=HrqfRCEbhRSGGpa4_ote0iGIsZXcAf2ppm5KcQXvYrc,4152
16
- open_fdd/tests/ahu/test_ahu_fc12.py,sha256=7SUcF3bdIxxLfd8TeOQOYgtwc0IGzKhtZA6dBh9Il4s,7206
17
- open_fdd/tests/ahu/test_ahu_fc13.py,sha256=mN0XMOrsnxd-iR5A0euPZHTmkv8sDQEz0FANKPdd_r0,6064
18
- open_fdd/tests/ahu/test_ahu_fc14.py,sha256=49A20E8vVt2TZQbaAHorqhuQtlh6rqkWiP46AdXJWKc,8409
19
- open_fdd/tests/ahu/test_ahu_fc15.py,sha256=CFZEg9g791SEl9VdZ_eG-CPok9yRVMzJVkcWWe1HBRM,8158
20
- open_fdd/tests/ahu/test_ahu_fc16.py,sha256=htGlPAnnbzrHWBZ_6YY85gns5R2Zdw4HubTqDX-gJlY,9451
21
- open_fdd/tests/ahu/test_ahu_fc2.py,sha256=CjmO_WUyaSHs17ifCCew3GBJ43nYG55uGL0vHDZpAq8,4736
22
- open_fdd/tests/ahu/test_ahu_fc3.py,sha256=NB6pOXDS-R4P0LNoRN8ItAqhhLnGnGuAHZha32Qw-hE,4658
23
- open_fdd/tests/ahu/test_ahu_fc4.py,sha256=vV8jEnFuNGLfhCoTVz29RsIcoDpDOMWg722G0aBEXaE,6304
24
- open_fdd/tests/ahu/test_ahu_fc5.py,sha256=TpSQTBIF591Q3mVaBeJ6HyqPWhVHmD_gSZNEIFT6yyg,6538
25
- open_fdd/tests/ahu/test_ahu_fc6.py,sha256=66dwv0EBU_ujZK-J9Ki5a3fnXlk17nOwmtKDiQOHdbM,10351
26
- open_fdd/tests/ahu/test_ahu_fc7.py,sha256=sABbw2m7WlAXbsqfDD323vfEfg606ThI0QzQyB-OjFo,2469
27
- open_fdd/tests/ahu/test_ahu_fc8.py,sha256=UZy6BP2PgV1FROUPqMORTx8YnT5ZvqVDhut_Ar81494,4663
28
- open_fdd/tests/ahu/test_ahu_fc9.py,sha256=b-eIzhNzjZUjVNsP0JAHkOgZu-BtDuPeNnblVVm-jU8,4796
29
- open_fdd/tests/chiller/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
- open_fdd/tests/chiller/test_chiller_fc1.py,sha256=VSSpEHVLGtozixQy6IVm4TbdOBcvYOPZ1b5mb6WpEy4,3730
31
- open_fdd/tests/chiller/test_chiller_fc2.py,sha256=vs_XA2RFskbEGbM5VuoG86UmghnKhvwY3d02hQlT4mA,3044
32
- open_fdd-0.1.8.dist-info/LICENSE,sha256=eghao_GGx_0gB2Sll3x2vV29knONEzUQKrkaXpX1F7w,1087
33
- open_fdd-0.1.8.dist-info/METADATA,sha256=GzfmmY4xwDzfLc9GfnV3n_AUJAGZCjZ3rtMwlF9jEj8,5613
34
- open_fdd-0.1.8.dist-info/WHEEL,sha256=beeZ86-EfXScwlR_HKu4SllMC9wUEj_8Z_4FJ3egI2w,91
35
- open_fdd-0.1.8.dist-info/top_level.txt,sha256=Q7sB6UB2d8Ch1v_xIsTiNegmgcCXPkwkrxK3ug6VEOs,9
36
- open_fdd-0.1.8.dist-info/RECORD,,