AeroViz 0.1.12__py3-none-any.whl → 0.1.14__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.

Potentially problematic release.


This version of AeroViz might be problematic. Click here for more details.

Files changed (87) hide show
  1. AeroViz/__pycache__/__init__.cpython-312.pyc +0 -0
  2. AeroViz/dataProcess/Chemistry/__pycache__/__init__.cpython-312.pyc +0 -0
  3. AeroViz/dataProcess/Optical/_IMPROVE.py +1 -1
  4. AeroViz/dataProcess/Optical/__pycache__/PyMieScatt_update.cpython-312.pyc +0 -0
  5. AeroViz/dataProcess/Optical/__pycache__/__init__.cpython-312.pyc +0 -0
  6. AeroViz/dataProcess/Optical/__pycache__/mie_theory.cpython-312.pyc +0 -0
  7. AeroViz/dataProcess/SizeDistr/__pycache__/__init__.cpython-312.pyc +0 -0
  8. AeroViz/dataProcess/VOC/__pycache__/__init__.cpython-312.pyc +0 -0
  9. AeroViz/dataProcess/__pycache__/__init__.cpython-312.pyc +0 -0
  10. AeroViz/dataProcess/core/__pycache__/__init__.cpython-312.pyc +0 -0
  11. AeroViz/plot/__pycache__/__init__.cpython-312.pyc +0 -0
  12. AeroViz/plot/__pycache__/bar.cpython-312.pyc +0 -0
  13. AeroViz/plot/__pycache__/box.cpython-312.pyc +0 -0
  14. AeroViz/plot/__pycache__/pie.cpython-312.pyc +0 -0
  15. AeroViz/plot/__pycache__/radar.cpython-312.pyc +0 -0
  16. AeroViz/plot/__pycache__/regression.cpython-312.pyc +0 -0
  17. AeroViz/plot/__pycache__/scatter.cpython-312.pyc +0 -0
  18. AeroViz/plot/__pycache__/violin.cpython-312.pyc +0 -0
  19. AeroViz/plot/distribution/__pycache__/__init__.cpython-312.pyc +0 -0
  20. AeroViz/plot/distribution/__pycache__/distribution.cpython-312.pyc +0 -0
  21. AeroViz/plot/meteorology/__pycache__/CBPF.cpython-312.pyc +0 -0
  22. AeroViz/plot/meteorology/__pycache__/__init__.cpython-312.pyc +0 -0
  23. AeroViz/plot/meteorology/__pycache__/hysplit.cpython-312.pyc +0 -0
  24. AeroViz/plot/meteorology/__pycache__/wind_rose.cpython-312.pyc +0 -0
  25. AeroViz/plot/optical/__pycache__/__init__.cpython-312.pyc +0 -0
  26. AeroViz/plot/optical/__pycache__/optical.cpython-312.pyc +0 -0
  27. AeroViz/plot/templates/__pycache__/__init__.cpython-312.pyc +0 -0
  28. AeroViz/plot/templates/__pycache__/ammonium_rich.cpython-312.pyc +0 -0
  29. AeroViz/plot/templates/__pycache__/contour.cpython-312.pyc +0 -0
  30. AeroViz/plot/templates/__pycache__/corr_matrix.cpython-312.pyc +0 -0
  31. AeroViz/plot/templates/__pycache__/diurnal_pattern.cpython-312.pyc +0 -0
  32. AeroViz/plot/templates/__pycache__/koschmieder.cpython-312.pyc +0 -0
  33. AeroViz/plot/templates/__pycache__/metal_heatmap.cpython-312.pyc +0 -0
  34. AeroViz/plot/templates/koschmieder.py +1 -1
  35. AeroViz/plot/timeseries/__pycache__/__init__.cpython-312.pyc +0 -0
  36. AeroViz/plot/timeseries/__pycache__/template.cpython-312.pyc +0 -0
  37. AeroViz/plot/timeseries/__pycache__/timeseries.cpython-312.pyc +0 -0
  38. AeroViz/plot/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  39. AeroViz/plot/utils/__pycache__/_color.cpython-312.pyc +0 -0
  40. AeroViz/plot/utils/__pycache__/_unit.cpython-312.pyc +0 -0
  41. AeroViz/plot/utils/__pycache__/plt_utils.cpython-312.pyc +0 -0
  42. AeroViz/plot/utils/__pycache__/sklearn_utils.cpython-312.pyc +0 -0
  43. AeroViz/rawDataReader/__init__.py +121 -56
  44. AeroViz/rawDataReader/__pycache__/__init__.cpython-312.pyc +0 -0
  45. AeroViz/rawDataReader/config/__pycache__/__init__.cpython-312.pyc +0 -0
  46. AeroViz/rawDataReader/config/__pycache__/supported_instruments.cpython-312.pyc +0 -0
  47. AeroViz/rawDataReader/config/supported_instruments.py +7 -4
  48. AeroViz/rawDataReader/core/__init__.py +42 -42
  49. AeroViz/rawDataReader/core/__pycache__/__init__.cpython-312.pyc +0 -0
  50. AeroViz/rawDataReader/core/__pycache__/logger.cpython-312.pyc +0 -0
  51. AeroViz/rawDataReader/core/__pycache__/qc.cpython-312.pyc +0 -0
  52. AeroViz/rawDataReader/core/logger.py +6 -2
  53. AeroViz/rawDataReader/core/qc.py +1 -1
  54. AeroViz/rawDataReader/script/AE33.py +1 -1
  55. AeroViz/rawDataReader/script/APS.py +13 -9
  56. AeroViz/rawDataReader/script/BAM1020.py +35 -0
  57. AeroViz/rawDataReader/script/NEPH.py +6 -10
  58. AeroViz/rawDataReader/script/OCEC.py +2 -2
  59. AeroViz/rawDataReader/script/SMPS.py +36 -16
  60. AeroViz/rawDataReader/script/TEOM.py +15 -3
  61. AeroViz/rawDataReader/script/__init__.py +1 -0
  62. AeroViz/rawDataReader/script/__pycache__/AE33.cpython-312.pyc +0 -0
  63. AeroViz/rawDataReader/script/__pycache__/AE43.cpython-312.pyc +0 -0
  64. AeroViz/rawDataReader/script/__pycache__/APS.cpython-312.pyc +0 -0
  65. AeroViz/rawDataReader/script/__pycache__/Aurora.cpython-312.pyc +0 -0
  66. AeroViz/rawDataReader/script/__pycache__/BAM1020.cpython-312.pyc +0 -0
  67. AeroViz/rawDataReader/script/__pycache__/BC1054.cpython-312.pyc +0 -0
  68. AeroViz/rawDataReader/script/__pycache__/EPA.cpython-312.pyc +0 -0
  69. AeroViz/rawDataReader/script/__pycache__/GRIMM.cpython-312.pyc +0 -0
  70. AeroViz/rawDataReader/script/__pycache__/IGAC.cpython-312.pyc +0 -0
  71. AeroViz/rawDataReader/script/__pycache__/MA350.cpython-312.pyc +0 -0
  72. AeroViz/rawDataReader/script/__pycache__/Minion.cpython-312.pyc +0 -0
  73. AeroViz/rawDataReader/script/__pycache__/NEPH.cpython-312.pyc +0 -0
  74. AeroViz/rawDataReader/script/__pycache__/OCEC.cpython-312.pyc +0 -0
  75. AeroViz/rawDataReader/script/__pycache__/SMPS.cpython-312.pyc +0 -0
  76. AeroViz/rawDataReader/script/__pycache__/TEOM.cpython-312.pyc +0 -0
  77. AeroViz/rawDataReader/script/__pycache__/VOC.cpython-312.pyc +0 -0
  78. AeroViz/rawDataReader/script/__pycache__/XRF.cpython-312.pyc +0 -0
  79. AeroViz/rawDataReader/script/__pycache__/__init__.cpython-312.pyc +0 -0
  80. AeroViz/tools/__pycache__/__init__.cpython-312.pyc +0 -0
  81. AeroViz/tools/__pycache__/database.cpython-312.pyc +0 -0
  82. AeroViz/tools/__pycache__/dataclassifier.cpython-312.pyc +0 -0
  83. {AeroViz-0.1.12.dist-info → AeroViz-0.1.14.dist-info}/METADATA +7 -6
  84. {AeroViz-0.1.12.dist-info → AeroViz-0.1.14.dist-info}/RECORD +87 -85
  85. {AeroViz-0.1.12.dist-info → AeroViz-0.1.14.dist-info}/LICENSE +0 -0
  86. {AeroViz-0.1.12.dist-info → AeroViz-0.1.14.dist-info}/WHEEL +0 -0
  87. {AeroViz-0.1.12.dist-info → AeroViz-0.1.14.dist-info}/top_level.txt +0 -0
@@ -22,19 +22,23 @@ class Reader(AbstractReader):
22
22
  # QC data
23
23
  def _QC(self, _df):
24
24
  _df = _df.copy()
25
+ _index = _df.index.copy()
25
26
 
26
27
  # mask out the data size lower than 7
27
- _df['total'] = _df.sum(axis=1, min_count=1) * (np.diff(np.log(_df.keys().to_numpy(float)))).mean()
28
- _df_size = _df['total'].dropna().resample('1h').size().resample(_df.index.freq).ffill()
29
- _df = _df.mask(_df_size < 7)
28
+ _df.loc[:, 'total'] = _df.sum(axis=1, min_count=1) * (np.diff(np.log(_df.keys().to_numpy(float)))).mean()
30
29
 
31
- # remove total conc. lower than 700
32
- _df = _df.mask(_df['total'] > 700)
30
+ hourly_counts = (_df['total']
31
+ .dropna()
32
+ .resample('h')
33
+ .size()
34
+ .resample('6min')
35
+ .ffill()
36
+ .reindex(_df.index, method='ffill', tolerance='6min'))
33
37
 
34
- # not confirmed
35
- # remove the bin over 4000 nm which num. conc. larger than 1
36
- # _df_remv_ky = _df.keys()[:-2][_df.keys()[:-2]>=4.]
38
+ # Remove data with less than 6 data per hour
39
+ _df = _df.mask(hourly_counts < 6)
37
40
 
38
- # _df_1hr[_df_remv_ky] = _df_1hr[_df_remv_ky].copy().mask(_df_1hr[_df_remv_ky]>1.)
41
+ # remove total conc. lower than 700 or lower than 1
42
+ _df = _df.mask((_df['total'] > 700) | (_df['total'] < 1))
39
43
 
40
44
  return _df[_df.keys()[:-1]]
@@ -0,0 +1,35 @@
1
+ from pandas import read_csv, to_numeric, NA
2
+
3
+ from AeroViz.rawDataReader.core import AbstractReader
4
+
5
+
6
+ class Reader(AbstractReader):
7
+ nam = 'BAM1020'
8
+
9
+ def _raw_reader(self, file):
10
+ PM = 'Conc'
11
+
12
+ _df = read_csv(file, parse_dates=True, index_col=0, usecols=range(0, 21))
13
+ _df.rename(columns={'Conc (mg/m3)': PM}, inplace=True)
14
+
15
+ # remove data when Conc = 1 or 0
16
+ _df[PM] = _df[PM].replace(1, NA)
17
+
18
+ _df = _df[[PM]].apply(to_numeric, errors='coerce')
19
+
20
+ # tranfer unit from mg/m3 to ug/m3
21
+ _df = _df * 1000
22
+
23
+ return _df.loc[~_df.index.duplicated() & _df.index.notna()]
24
+
25
+ def _QC(self, _df):
26
+ _index = _df.index.copy()
27
+
28
+ # remove negative value
29
+ _df = _df.mask((_df <= 0) | (_df > 500))
30
+
31
+ # use IQR_QC
32
+ _df = self.time_aware_IQR_QC(_df, time_window='1h')
33
+
34
+ # make sure all columns have values, otherwise set to nan
35
+ return _df.dropna(how='any').reindex(_index)
@@ -1,4 +1,4 @@
1
- from pandas import to_datetime, read_csv, DataFrame, to_numeric
1
+ from pandas import to_datetime, read_csv, to_numeric
2
2
 
3
3
  from AeroViz.rawDataReader.core import AbstractReader
4
4
 
@@ -46,17 +46,13 @@ class Reader(AbstractReader):
46
46
 
47
47
  return _df.loc[~_df.index.duplicated() & _df.index.notna()]
48
48
 
49
- except ValueError:
50
- # Define valid groups and find invalid indices
49
+ except ValueError: # Define valid groups and find invalid indices
51
50
  invalid_indices = _df[~_df[0].isin({'B', 'G', 'R', 'D', 'T', 'Y', 'Z'})].index
52
- print("Invalid values and their indices:")
53
- print("\n".join([f"Index: {idx}, Value: {_df.at[idx, 0]}" for idx in invalid_indices]))
51
+ self.logger.warning(
52
+ f"\tInvalid values in {file.name}: {', '.join(f'{_}:{_df.at[_, 0]}' for _ in invalid_indices)}."
53
+ f" Skipping file.")
54
54
 
55
- # Return an empty DataFrame with specified columns if there's a length mismatch
56
- _df_out = DataFrame(index=_idx_tm, columns=['B', 'G', 'R', 'BB', 'BG', 'BR', 'RH'])
57
- _df_out.index.name = 'Time'
58
- print(f'\n\t\t\t Length mismatch in {file} data. Returning an empty DataFrame.')
59
- return _df_out
55
+ return None
60
56
 
61
57
  def _QC(self, _df):
62
58
  MDL_sensitivity = {'B': .1, 'G': .1, 'R': .3}
@@ -9,12 +9,12 @@ class Reader(AbstractReader):
9
9
 
10
10
  def _raw_reader(self, file):
11
11
  with open(file, 'r', encoding='utf-8', errors='ignore') as f:
12
- _df = read_csv(f, skiprows=3)
12
+ _df = read_csv(f, skiprows=3, on_bad_lines='skip')
13
13
 
14
14
  _df['Start Date/Time'] = _df['Start Date/Time'].str.strip()
15
15
  _df['time'] = to_datetime(_df['Start Date/Time'], format='%m/%d/%Y %I:%M:%S %p', errors='coerce')
16
16
 
17
- if _df['time'].isna().any():
17
+ if _df['time'].isna().all():
18
18
  _df['time'] = to_datetime(_df['Start Date/Time'], format='%m/%d/%Y %H:%M:%S', errors='coerce')
19
19
 
20
20
  _df = _df.set_index('time')
@@ -36,7 +36,7 @@ class Reader(AbstractReader):
36
36
  skip = find_header_row(f, delimiter)
37
37
  f.seek(0)
38
38
 
39
- _df = read_csv(f, sep=delimiter, skiprows=skip)
39
+ _df = read_csv(f, sep=delimiter, skiprows=skip, low_memory=False)
40
40
 
41
41
  for date_format in date_formats:
42
42
  _time_index = parse_date(_df, date_format)
@@ -56,30 +56,50 @@ class Reader(AbstractReader):
56
56
  _df_smps.columns = _df_smps.columns.astype(float)
57
57
  _df_smps = _df_smps.loc[_df_smps.index.dropna().copy()]
58
58
 
59
- if _df_smps.columns[0] != self.size_range[0] or _df_smps.columns[-1] != self.size_range[1]:
60
- self.logger.info(f'\tSMPS file: {file.name} is not match the default size range {self.size_range}, '
61
- f'it is ({_df_smps.columns[0]}, {_df_smps.columns[-1]})')
59
+ size_range = self.kwargs.get('size_range') or (11.8, 593.5)
60
+
61
+ if _df_smps.columns[0] != size_range[0] or _df_smps.columns[-1] != size_range[1]:
62
+ self.logger.warning(f'\tSMPS file: {file.name} is not match the setting size range {size_range}, '
63
+ f'it is ({_df_smps.columns[0]}, {_df_smps.columns[-1]}). '
64
+ f'Please run by another RawDataReader instance, and set the correct size range')
65
+ return None
62
66
 
63
67
  return _df_smps.apply(to_numeric, errors='coerce')
64
68
 
65
69
  # QC data
66
70
  def _QC(self, _df):
67
- df = _df.copy()
71
+ _df = _df.copy()
72
+ _index = _df.index.copy()
73
+
74
+ size_range = self.kwargs.get('size_range') or (11.8, 593.5)
68
75
 
69
- size_range_mask = (df.columns.astype(float) >= self.size_range[0]) & (
70
- df.columns.astype(float) <= self.size_range[1])
71
- df = df.loc[:, size_range_mask]
76
+ size_range_mask = (_df.columns.astype(float) >= size_range[0]) & (
77
+ _df.columns.astype(float) <= size_range[1])
78
+ _df = _df.loc[:, size_range_mask]
72
79
 
73
80
  # mask out the data size lower than 7
74
- df.loc[:, 'total'] = df.sum(axis=1, min_count=1) * (np.diff(np.log(df.columns[:-1].to_numpy(float)))).mean()
75
- _df_size = df['total'].dropna().resample('1h').size().resample(df.index.freq).ffill()
76
- df = df.mask(_df_size < 7)
81
+ _df.loc[:, 'total'] = _df.sum(axis=1, min_count=1) * (np.diff(np.log(_df.columns[:-1].to_numpy(float)))).mean()
82
+
83
+ hourly_counts = (_df['total']
84
+ .dropna()
85
+ .resample('h')
86
+ .size()
87
+ .resample('6min')
88
+ .ffill()
89
+ .reindex(_df.index, method='ffill', tolerance='6min'))
90
+
91
+ # Remove data with less than 6 data per hour
92
+ _df = _df.mask(hourly_counts < 6)
93
+
94
+ # remove total conc. (dN) lower than 2000
95
+ _df = _df.mask(_df['total'] < 2000)
96
+ _df = _df.drop('total', axis=1)
77
97
 
78
- # remove total conc. lower than 2000
79
- df = df.mask(df['total'] < 2000)
98
+ # remove single bin conc. (dN/dlogdp) larger than 1e6
99
+ _df = _df.mask((_df > 1e6).any(axis=1))
80
100
 
81
101
  # remove the bin over 400 nm which num. conc. larger than 4000
82
- _df_remv_ky = df.keys()[:-1][df.keys()[:-1] >= 400.]
83
- df[_df_remv_ky] = df[_df_remv_ky].copy().mask(df[_df_remv_ky] > 4000.)
102
+ large_bins = _df.columns[_df.columns.astype(float) >= 400]
103
+ _df = _df.mask((_df[large_bins] > 4000).any(axis=1))
84
104
 
85
- return df[df.keys()[:-1]]
105
+ return _df
@@ -1,3 +1,4 @@
1
+ import pandas as pd
1
2
  from pandas import to_datetime, read_csv, Timedelta, to_numeric
2
3
 
3
4
  from AeroViz.rawDataReader.core import AbstractReader
@@ -7,9 +8,9 @@ class Reader(AbstractReader):
7
8
  nam = 'TEOM'
8
9
 
9
10
  def _raw_reader(self, file):
10
- with open(file, 'r', encoding='utf-8', errors='ignore') as f:
11
- _df = read_csv(f, skiprows=3, index_col=False)
11
+ _df = read_csv(file, skiprows=3, index_col=False)
12
12
 
13
+ if 'Time Stamp' in _df.columns: # remote download
13
14
  _df = _df.rename(columns={'Time Stamp': 'time',
14
15
  'System status': 'status',
15
16
  'PM-2.5 base MC': 'PM_NV',
@@ -25,8 +26,19 @@ class Reader(AbstractReader):
25
26
 
26
27
  _df = _df.set_index(to_datetime(_tm_idx, errors='coerce', format='%d - %m - %Y %X'))
27
28
 
28
- _df = _df.where(_df['status'] < 1)
29
+ elif 'tmoStatusCondition_0' in _df.columns: # usb download
30
+ _df['time'] = pd.to_datetime(_df['Date'] + ' ' + _df['Time'], errors='coerce', format='%Y-%m-%d %H:%M:%S')
31
+ _df.drop(columns=['Date', 'Time'], inplace=True)
32
+ _df.set_index('time', inplace=True)
29
33
 
34
+ _df = _df.rename(columns={'tmoStatusCondition_0': 'status',
35
+ 'tmoTEOMABaseMC_0': 'PM_NV',
36
+ 'tmoTEOMAMC_0': 'PM_Total',
37
+ 'tmoTEOMANoise_0': 'noise', })
38
+ else:
39
+ raise NotImplementedError
40
+
41
+ _df = _df.where(_df['status'] < 1)
30
42
  _df = _df[['PM_NV', 'PM_Total', 'noise']].apply(to_numeric, errors='coerce')
31
43
 
32
44
  return _df.loc[~_df.index.duplicated() & _df.index.notna()]
@@ -8,6 +8,7 @@ __all__ = [
8
8
  'AE43',
9
9
  'BC1054',
10
10
  'MA350',
11
+ 'BAM1020',
11
12
  'TEOM',
12
13
  'OCEC',
13
14
  'IGAC',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: AeroViz
3
- Version: 0.1.12
3
+ Version: 0.1.14
4
4
  Summary: Aerosol science
5
5
  Author-email: alex <alex870521@gmail.com>
6
6
  License: MIT
@@ -24,7 +24,7 @@ Requires-Dist: scikit-learn==1.5.1
24
24
  Requires-Dist: windrose==1.9.2
25
25
  Requires-Dist: cartopy==0.24.1
26
26
  Requires-Dist: tabulate==0.9.0
27
- Requires-Dist: rich~=13.7.1
27
+ Requires-Dist: rich~=13.9.4
28
28
  Provides-Extra: test
29
29
  Requires-Dist: pytest>=7.0.0; extra == "test"
30
30
  Requires-Dist: pytest-cov>=4.1.0; extra == "test"
@@ -72,7 +72,8 @@ pip install AeroViz
72
72
 
73
73
  Built-in `RawDataReader` supporting multiple aerosol instruments:
74
74
  - **Particle Sizers**: SMPS, APS, GRIMM, OPC
75
- - **Mass & Optical**: TEOM, NEPH, Aurora, AE33/43, BC1054
75
+ - **Mass**: TEOM, BAM1020
76
+ - **Optical**: NEPH, Aurora, AE33/43, BC1054
76
77
  - **Chemical Analysis**: OCEC, IGAC, XRF, VOC
77
78
 
78
79
  > Features include quality control, data filtering, flexible resampling, and CSV export. For detailed instrument support
@@ -82,7 +83,7 @@ Built-in `RawDataReader` supporting multiple aerosol instruments:
82
83
 
83
84
  Built-in `DataProcess` provides advanced aerosol analysis:
84
85
  - **Size Distribution**: Mode Fitting, Log-Normal Analysis
85
- - **Optical Properties**: Mie Theory, SOAP Calculation
86
+ - **Optical Properties**: Mie Theory, IMPROVE
86
87
  - **Chemical**: Mass Closure, Source Apportionment
87
88
  - **VOC**: OFP, SOAP
88
89
 
@@ -104,8 +105,8 @@ from AeroViz import RawDataReader, DataProcess, plot
104
105
 
105
106
  # Read data from a supported instrument
106
107
  data = RawDataReader(
107
- 'NEPH',
108
- Path('/path/to/data'),
108
+ instrument='Neph',
109
+ path=Path('/path/to/data'),
109
110
  start=datetime(2024, 2, 1),
110
111
  end=datetime(2024, 4, 30)
111
112
  )
@@ -1,5 +1,5 @@
1
1
  AeroViz/__init__.py,sha256=4ICXg4UATkGXIUziaXcPX2Yaqj6OK5SL0ilU1JKeGFw,341
2
- AeroViz/__pycache__/__init__.cpython-312.pyc,sha256=rFyv4c4j1wZFxgjgaelbYczxY_f23IRZy8MmUe6HJF4,428
2
+ AeroViz/__pycache__/__init__.cpython-312.pyc,sha256=Y13IWcTa8td9cc-YYgsLO6zeIsG3VBgqTvS38opGtF8,428
3
3
  AeroViz/data/DEFAULT_DATA.csv,sha256=eeeyeh8vSLKkE5tAF0TYnUNOyQIH98VA41bJaAP204Y,2248526
4
4
  AeroViz/data/DEFAULT_PNSD_DATA.csv,sha256=imLvLA80oYwo_jzXZtlQn5hZ76d47HUIlK2jp0tZPrg,2636511
5
5
  AeroViz/data/hysplit_example_data.txt,sha256=DWfY83EW3fOcv9dW-Y4pudq8-M7BJlXD-tlMSYrAk2w,8946
@@ -13,10 +13,10 @@ AeroViz/dataProcess/Chemistry/_partition.py,sha256=tKhb6BJns46UiUlEq6Zq7ahYnvUJ_
13
13
  AeroViz/dataProcess/Chemistry/_teom.py,sha256=IiM-TrifWpQLTbKllG-4k4c3mvQulfcmjswWu6muCXA,486
14
14
  AeroViz/dataProcess/Chemistry/isrpia.cnf,sha256=iWXTqsOZFmNrJxAI9nYuilZ9h6ru1icdPFVim7YKc_k,566
15
15
  AeroViz/dataProcess/Chemistry/isrpia2.exe,sha256=xFYPTXHSjl_-atmVcTmqqOkTZgUn1p8h-kFMcoGMIQw,1560032
16
- AeroViz/dataProcess/Chemistry/__pycache__/__init__.cpython-312.pyc,sha256=-QZKV4EnCIk6T63GVXVvd1_BabdLXgyDxOhUMMISgPM,2712
16
+ AeroViz/dataProcess/Chemistry/__pycache__/__init__.cpython-312.pyc,sha256=wh_P_F75cgzp99Y_aBs-su2_Mbva-t9eOERhy_lO7cQ,2712
17
17
  AeroViz/dataProcess/Optical/Angstrom_exponent.py,sha256=KSGM_hf2oUPsLoLuhYSRDK5zdekwce9KgqhzRnf2Y4g,706
18
18
  AeroViz/dataProcess/Optical/PyMieScatt_update.py,sha256=3W2nqo9sQLqj9dqWh5Eqx2XUdu44bGWDLTa3QnjiUvM,20943
19
- AeroViz/dataProcess/Optical/_IMPROVE.py,sha256=n3uHUQTivckIrNlbE8rP7lPZGcMWZUAnS_qX8pXd55Q,1670
19
+ AeroViz/dataProcess/Optical/_IMPROVE.py,sha256=deS94SmoW9H3YyFyzCZ6mWLYoY2f2M-UWLr4qN6RwbI,1662
20
20
  AeroViz/dataProcess/Optical/__init__.py,sha256=h_IYhaum0DhK7Qw6lWFvjAEv7uAqLVVPEwU0V4hJnX4,1371
21
21
  AeroViz/dataProcess/Optical/_absorption.py,sha256=pYHIoj_R23wKvxR4acUqqU9JXKY40wgsFvZH78rETrY,1234
22
22
  AeroViz/dataProcess/Optical/_extinction.py,sha256=anUemSXmLvJi2CSxqTYgQCgUW4pSUqgZ0q0xZ4zs0zY,1189
@@ -25,9 +25,9 @@ AeroViz/dataProcess/Optical/_mie_sd.py,sha256=cbWSorfG-l92csaXsZJ7005f8ij2H_VZop
25
25
  AeroViz/dataProcess/Optical/_scattering.py,sha256=w5xXXOfafV9a_dXY60YqTyzFDZppjBJeLcKl5PeCQe4,961
26
26
  AeroViz/dataProcess/Optical/fRH.pkl,sha256=PhJ-BYTaUDjl2Lp5Wz0zeiLQCzrsNdq8nP7Jd1BXyXE,4528
27
27
  AeroViz/dataProcess/Optical/mie_theory.py,sha256=EC3SsUaq5G3SdQyPMQxcosbEokqAgJw-4Gz6moJiOsk,8666
28
- AeroViz/dataProcess/Optical/__pycache__/PyMieScatt_update.cpython-312.pyc,sha256=W5tzeZnoJ8IF0mWMImZNv7wqTGhny-KkoMxHMgE-R14,32602
29
- AeroViz/dataProcess/Optical/__pycache__/__init__.cpython-312.pyc,sha256=kLT99igZ1AIE5MLY_pGl3L5AwTvbcHEN5FmFbNciOro,2114
30
- AeroViz/dataProcess/Optical/__pycache__/mie_theory.cpython-312.pyc,sha256=6pnzZmtCgElE2NAzdUiZ8NwKB2hwhcmxZSO-hAls49s,10662
28
+ AeroViz/dataProcess/Optical/__pycache__/PyMieScatt_update.cpython-312.pyc,sha256=4JslxM_9_B4rkxvbqVbCGMc51a8EeJ-sfuTXcxrQVJw,32602
29
+ AeroViz/dataProcess/Optical/__pycache__/__init__.cpython-312.pyc,sha256=x7t1wgKRTRNaux19n3JnMywUVfaihHj5BMzT_7fxaLM,2114
30
+ AeroViz/dataProcess/Optical/__pycache__/mie_theory.cpython-312.pyc,sha256=Xmm2DCS4Jnwpwoorxu5LNwrsIjTDSeOWEHCOHbqVvWo,10662
31
31
  AeroViz/dataProcess/SizeDistr/__init__.py,sha256=fka1IJW4wZzYWE9HjWi8i03ab0JLFXOUdaHWYs4VHEQ,2172
32
32
  AeroViz/dataProcess/SizeDistr/__merge.py,sha256=A-ZmduUA9a0nVM8szhG1AWhsfUPu2UhGIaqFLcmg7Lk,9422
33
33
  AeroViz/dataProcess/SizeDistr/_merge.py,sha256=CyZwUc2M4lL-OE74e8mXq41nC6X0LJTAV8TwpO3fS2o,9176
@@ -37,14 +37,14 @@ AeroViz/dataProcess/SizeDistr/_merge_v3.py,sha256=HN2ARFmeWOawOWRPPv_pHEGBBZNgXV
37
37
  AeroViz/dataProcess/SizeDistr/_merge_v4.py,sha256=b8RVAievGIOLrmJHJXRsKXQ1tkMkm6rx43S7XAfeXE4,16228
38
38
  AeroViz/dataProcess/SizeDistr/_size_distr.py,sha256=ULhGKlxE9QmbDO_PS3HOSKzepeMfJZWabJvGXqsDEvE,3259
39
39
  AeroViz/dataProcess/SizeDistr/prop.py,sha256=7f18SOkkLgDiY_g1c1We8g-3WDJJIFcxkfR4F99jUgc,1845
40
- AeroViz/dataProcess/SizeDistr/__pycache__/__init__.cpython-312.pyc,sha256=vobgdfNHncQnFALFjqHXbtjVbxRgTA-NIVYpb38NOuM,2552
40
+ AeroViz/dataProcess/SizeDistr/__pycache__/__init__.cpython-312.pyc,sha256=GZMB4pFrbNYFFbrl1YK6Ls1WZZj4tSwDLZWD7vZR7qI,2552
41
41
  AeroViz/dataProcess/VOC/__init__.py,sha256=8GNP0RMymTkJXK18pSgfLHqrKPWboN-3x1_Ke4UrI44,259
42
42
  AeroViz/dataProcess/VOC/_potential_par.py,sha256=h3rVdvtBvC6xHa_ZG4Oq5eXezeSZtHNy6T6I40maIcM,3863
43
43
  AeroViz/dataProcess/VOC/support_voc.json,sha256=tMYp_NERqhSriVRE2NavXh33CQ5CnsbJHtmMFlE5q_E,6804
44
- AeroViz/dataProcess/VOC/__pycache__/__init__.cpython-312.pyc,sha256=vZ0R_PqF1Vg1AHsk9F28VCdDeNYcu0vJhgs6Ff6H89g,716
45
- AeroViz/dataProcess/__pycache__/__init__.cpython-312.pyc,sha256=LuAWC7ehbPJv5ZPlYLfkkSkIlN3lCwYT97OOGoHsnNk,1067
44
+ AeroViz/dataProcess/VOC/__pycache__/__init__.cpython-312.pyc,sha256=PGySgMDbLbtV7Aq6eYozqmLOKGT18D_4TdLsGPaFn9c,716
45
+ AeroViz/dataProcess/__pycache__/__init__.cpython-312.pyc,sha256=khm0ATrZsMsICtRedGEurvdD3ZJu03BAyPYEXBcuX58,1067
46
46
  AeroViz/dataProcess/core/__init__.py,sha256=FhGwqlP8ZwXZQS0LjH0YOz2g1Q2yJniUUhRZ_jDOQ6k,2707
47
- AeroViz/dataProcess/core/__pycache__/__init__.cpython-312.pyc,sha256=uK4tH5hPSgqBUEF2j8I0fPgBvjiOX2CbKOdH9c3c8X8,4430
47
+ AeroViz/dataProcess/core/__pycache__/__init__.cpython-312.pyc,sha256=iDbt-y6LWk8oTpo1ba3cJBDNaROhOVH1sI64JEFbBWs,4430
48
48
  AeroViz/plot/__init__.py,sha256=Cy42d1t58zeutxLYDkm8bFbRNGE0G1T8VpqGj1li1Cw,419
49
49
  AeroViz/plot/bar.py,sha256=cSPKJLWGifCzICCZVPcbZtrDrea_AStlwSli9-b-lsA,4246
50
50
  AeroViz/plot/box.py,sha256=8zDd8jYndSv5f0P1lFeX0m7VWYh9okYgJTClh2Lj7Dg,2115
@@ -53,50 +53,50 @@ AeroViz/plot/radar.py,sha256=QHXkLQlAZZQDWHcqVGJBeRsGiu45GYmy3lN6gwlh6xY,6965
53
53
  AeroViz/plot/regression.py,sha256=mTCNrCAYvH7QjIb_5WlltCR1Kqwer1anpGEsxmO2S3o,7292
54
54
  AeroViz/plot/scatter.py,sha256=sxk5QxgC1Jk9PuY18q9aRgR_Ipvg5dM1RkwYQxRkn1c,6787
55
55
  AeroViz/plot/violin.py,sha256=pU2Z2yTWocEtImmCAmbtn0WvXtUOrnCGOdDOrLxjooU,2689
56
- AeroViz/plot/__pycache__/__init__.cpython-312.pyc,sha256=-UYqvtOwl4R9EM-lCBETEFNzqtAbctoHZgUdrironkU,684
57
- AeroViz/plot/__pycache__/bar.cpython-312.pyc,sha256=dES5kB3XgvSNwNGjlOjzviJadz6weDEewAdmc8m1Wi8,5954
58
- AeroViz/plot/__pycache__/box.cpython-312.pyc,sha256=MGKi1tcGbP_GjdKo15zEDOJpQIC5XjjdnvpB-yIblh8,4043
59
- AeroViz/plot/__pycache__/pie.cpython-312.pyc,sha256=ZXqqVodXWFS9envKHbH-Kv3BaxP9lYfUiC7DeIAWloI,10689
60
- AeroViz/plot/__pycache__/radar.cpython-312.pyc,sha256=DTm0Jv6SvTPS9nT4VpZ0RTY0KojwkSux5q-fc1LoAVQ,9335
61
- AeroViz/plot/__pycache__/regression.cpython-312.pyc,sha256=8MTFYypMvBQ8d4ZocwVr1yByUORbC3-MTLBI_6JIlek,8417
62
- AeroViz/plot/__pycache__/scatter.cpython-312.pyc,sha256=6-yVNc4DD1bbxKdH81cGuccHq6bI73AX9WkG9nZSJ9M,9540
63
- AeroViz/plot/__pycache__/violin.cpython-312.pyc,sha256=6FJvVgY8Hvh66kh0hdJd5Tkfds6rQSYbfJQptG3mil8,4291
56
+ AeroViz/plot/__pycache__/__init__.cpython-312.pyc,sha256=00qQo9lBqE-NT7hY0QyCWF9XzQMR3NNk-rdwxx8sTVo,684
57
+ AeroViz/plot/__pycache__/bar.cpython-312.pyc,sha256=z445u4zvLhhgczpf5QkZhG0yJDaHbWbZ01_IOqiRO9E,5954
58
+ AeroViz/plot/__pycache__/box.cpython-312.pyc,sha256=WCVIU_pU-u8qGtIfeLPT4yzHmpKtQk_xnj5zC-m0NPo,4043
59
+ AeroViz/plot/__pycache__/pie.cpython-312.pyc,sha256=JhdepvF4Oi0x2nQ02524P7q112gkwZIyCup2S19tQdU,10689
60
+ AeroViz/plot/__pycache__/radar.cpython-312.pyc,sha256=GuAwejEkEriZGmjQVIAGJPT1GruPHirBaQVihm5vPmY,9335
61
+ AeroViz/plot/__pycache__/regression.cpython-312.pyc,sha256=3X6az7uj4A3yDelEoPUDJQla0Pe7aPAIfRL6yyNLzP4,8417
62
+ AeroViz/plot/__pycache__/scatter.cpython-312.pyc,sha256=x-F0UNk9Kk24XUyZ9QKiCj821IrHzsK1kIvbo79UFoo,9540
63
+ AeroViz/plot/__pycache__/violin.cpython-312.pyc,sha256=JFJmQxxASI3VuI2cJNkGCgewZ4aAzw9Ge-qjufKmKQk,4291
64
64
  AeroViz/plot/distribution/__init__.py,sha256=nhbIegWczkuEfWsE7-2jfF0dnpmPDzJJzjq8Fuh6q5k,28
65
65
  AeroViz/plot/distribution/distribution.py,sha256=sAjqtqKavFwQqI8PGPFnpvZFSU-w2UKjcTTC5L91f4E,20595
66
- AeroViz/plot/distribution/__pycache__/__init__.cpython-312.pyc,sha256=5gf7XXE_D5M8yUyZvDVzqdHtXU7iw8pytnCQ-wYC6VM,202
67
- AeroViz/plot/distribution/__pycache__/distribution.cpython-312.pyc,sha256=9gD5v9hWS055plHxIooJv_PAUakFIwSg9KE3h-qJAis,30983
66
+ AeroViz/plot/distribution/__pycache__/__init__.cpython-312.pyc,sha256=RiyZAY8cRmN6o9mrSI90BR5pPgzUEQ9jLNho5K2aCuw,202
67
+ AeroViz/plot/distribution/__pycache__/distribution.cpython-312.pyc,sha256=LwJyWxGbU96F41Kq6RidK50_dS5RqX6pOMMlRQUryUk,30983
68
68
  AeroViz/plot/meteorology/CBPF.py,sha256=4BjPNW2H2Q9HSyDvqxGAibQSIieKkt7CrFQo1rmdKWQ,11136
69
69
  AeroViz/plot/meteorology/__init__.py,sha256=6HRc9TwUDOohULJ4hURbQSMKlHfoZzG1zLS1AUg0fH4,85
70
70
  AeroViz/plot/meteorology/hysplit.py,sha256=gUlg1Gr-PbqDQI8bWqnHR5UpzRGstvGM0QrrT_EpWtg,2910
71
71
  AeroViz/plot/meteorology/wind_rose.py,sha256=Bp2LjyJhm5FRINH6UUb70g9rA9kZ1oK-9rLvSGHBjwU,2876
72
- AeroViz/plot/meteorology/__pycache__/CBPF.cpython-312.pyc,sha256=LQ3AzIu_bhk3MzTgry8dqjiFBMISL97-xMwNQeuwHWI,15329
73
- AeroViz/plot/meteorology/__pycache__/__init__.cpython-312.pyc,sha256=vCbQFKvONX0jFYRKEJIOHXgcO00fFLbYQjjlFurHd84,261
74
- AeroViz/plot/meteorology/__pycache__/hysplit.cpython-312.pyc,sha256=Ww-jQF4G5SngYplITDx0HlA-lwmcPZuZOeJqTu8BiXI,4013
75
- AeroViz/plot/meteorology/__pycache__/wind_rose.cpython-312.pyc,sha256=9Zhg27jQPyEvTT43cmYIMITZyAs0pEjJvulFDd6JDm8,3413
72
+ AeroViz/plot/meteorology/__pycache__/CBPF.cpython-312.pyc,sha256=itHtfx78zXK1XX9WxCBF96vDqj7bw25uMI7T8H-g3VU,15329
73
+ AeroViz/plot/meteorology/__pycache__/__init__.cpython-312.pyc,sha256=3kbwycQygVVGk2QOFzR69-kXUpq5UEV5Q_iwlZFwPKc,261
74
+ AeroViz/plot/meteorology/__pycache__/hysplit.cpython-312.pyc,sha256=gN3A8sEtkM7CEHjrRadFnNsfzdwcQd8nxhHjlWxioGA,4013
75
+ AeroViz/plot/meteorology/__pycache__/wind_rose.cpython-312.pyc,sha256=19N8ouXkv7XZaVe3IGFLpqILSJeKJprJlbqG5P7tKWg,3413
76
76
  AeroViz/plot/optical/__init__.py,sha256=5S2WPq8NouPYgc46c1XBveSL8Cxs3w8wNYN7vWIpB-s,23
77
77
  AeroViz/plot/optical/optical.py,sha256=j8LUSga9BvVjZnGKNG8bt62E9xoBoO2OQxvDBqY6U90,13664
78
- AeroViz/plot/optical/__pycache__/__init__.cpython-312.pyc,sha256=bWTA0Nx6RD3cJWsWh9cIIZHoPUx66yWnt0_j7GW8xHs,192
79
- AeroViz/plot/optical/__pycache__/optical.cpython-312.pyc,sha256=dpc0al4Ag4YMbohEYa75Kd9Q3CEaU2_woA-XCVgUayc,18435
78
+ AeroViz/plot/optical/__pycache__/__init__.cpython-312.pyc,sha256=MT_MvPpbCy_g5pLecxzFnPtArKmUw7DZG5XeN7enFpU,192
79
+ AeroViz/plot/optical/__pycache__/optical.cpython-312.pyc,sha256=DBnS19t0KgS7337PRRqbw-RWBIzKeTj3gRVoyhqhX9I,18435
80
80
  AeroViz/plot/templates/__init__.py,sha256=VXp73SqrSF1WR9WYhHpHtbhvFcb1CR4JeV1tPQvCEEI,227
81
81
  AeroViz/plot/templates/ammonium_rich.py,sha256=a46rfwhSZ3LIj71LxdOnklAFyy6Xe_VQ-kh1komnZ5g,1225
82
82
  AeroViz/plot/templates/contour.py,sha256=fAM6Wn_EmENQM1IW6KJpwmLva6D9P2dEAaK6cNQBtdQ,1678
83
83
  AeroViz/plot/templates/corr_matrix.py,sha256=VeiwBwmg_v6LYslJvhSqweiLBheR3vGfPYxrtHoqJRI,3507
84
84
  AeroViz/plot/templates/diurnal_pattern.py,sha256=TOE4PvHluZhjZvDEeZIv8hcb-PthBNDrgEWtyPmwMcg,2051
85
- AeroViz/plot/templates/koschmieder.py,sha256=YMtok3T5VHlzLphnsrkchNRnw5UE3XSLYDne42Efofo,3343
85
+ AeroViz/plot/templates/koschmieder.py,sha256=zAfv3tlC8tHyWm1PD93hDAx3hCzgIu19z-Pyfwb0y4I,3386
86
86
  AeroViz/plot/templates/metal_heatmap.py,sha256=ngqJFiOPCoExPKv-lHvgB1XCSr9fF_jSKmx4VwjUUXQ,4961
87
- AeroViz/plot/templates/__pycache__/__init__.cpython-312.pyc,sha256=m7hY47B2e2FfSA9oZu_U5FJPTQXgeQbSjcVYrjartPU,413
88
- AeroViz/plot/templates/__pycache__/ammonium_rich.cpython-312.pyc,sha256=ZTi3fYDgcTGt5ETR3M_VF8w6eOQWNmSFQa2H8P2TSxc,2201
89
- AeroViz/plot/templates/__pycache__/contour.cpython-312.pyc,sha256=qhxEdahrPwMPXNptm1PIqK5d9CHvsBg7z5Qbro1J6UQ,3550
90
- AeroViz/plot/templates/__pycache__/corr_matrix.cpython-312.pyc,sha256=qTTjU_5rMSY0RuHcX80Gftx27sOXTetP7RI1F1yukwY,6130
91
- AeroViz/plot/templates/__pycache__/diurnal_pattern.cpython-312.pyc,sha256=Jsmd-xZyxE0qUkhuSSz5Y2pz_-5UPniBSIaS6fGnWpo,3422
92
- AeroViz/plot/templates/__pycache__/koschmieder.cpython-312.pyc,sha256=t08RvcKhtrQZKVxiA6l72zJE11H8C419mLXxkNDCjWc,5660
93
- AeroViz/plot/templates/__pycache__/metal_heatmap.cpython-312.pyc,sha256=BAXipTYX12KTKtfPJuXnnfuuKPSROSZ198MJlafR5uo,7003
87
+ AeroViz/plot/templates/__pycache__/__init__.cpython-312.pyc,sha256=l0rueNcr3m_8Z9Vc1UxzP6MqpC9q7ud51ZdvIgOpTPI,413
88
+ AeroViz/plot/templates/__pycache__/ammonium_rich.cpython-312.pyc,sha256=zHVz2pISUqECxEbd1BEWULotyYTo-v1FHD1VKnfGXBU,2201
89
+ AeroViz/plot/templates/__pycache__/contour.cpython-312.pyc,sha256=EBPjEF372PUm3zy87d7msB1dCiOocfJAmSrXCgCDjdg,3550
90
+ AeroViz/plot/templates/__pycache__/corr_matrix.cpython-312.pyc,sha256=A_zsvi7wFXLa3us8QfBVbXoUK3QrcrTB97wApk-x1AM,6130
91
+ AeroViz/plot/templates/__pycache__/diurnal_pattern.cpython-312.pyc,sha256=SGLJHzLnNZhwK8M7_yJK_6Q0iWhB6qD2O14Mx8dK6As,3422
92
+ AeroViz/plot/templates/__pycache__/koschmieder.cpython-312.pyc,sha256=SVek7zrdka5d1Q2BQxjpa1bPJr4Irmtm3cz_2QNLCXo,5753
93
+ AeroViz/plot/templates/__pycache__/metal_heatmap.cpython-312.pyc,sha256=BGJGYi88Sq4zwt49e0kXyCm688EfcBFihXG2epWMBSE,7003
94
94
  AeroViz/plot/timeseries/__init__.py,sha256=LQ_aE32pvp5ouC--BRa0NwSJ48DYO3rFaOt4AKGmn_s,50
95
95
  AeroViz/plot/timeseries/template.py,sha256=ey16q66UAOLhXGKHAPGbRp-QD3J6GkF_cXhkrRIybS8,1472
96
96
  AeroViz/plot/timeseries/timeseries.py,sha256=SnGxPceWXSI43iajfsOW2sUpQdh9wjZsUuAUEhJ-f-Y,16170
97
- AeroViz/plot/timeseries/__pycache__/__init__.cpython-312.pyc,sha256=uzs7cFJZ3wjvVQ55ghEFKr9xjDeIM6rwFbjy7JaAJ9M,221
98
- AeroViz/plot/timeseries/__pycache__/template.cpython-312.pyc,sha256=LnuPTuCOLXPdh_cHJhNv6Y8HsW5h43EkLyomWkMGzUU,1919
99
- AeroViz/plot/timeseries/__pycache__/timeseries.cpython-312.pyc,sha256=332lXTWiT4GW5Tup_saWJAPIjgnH1qgrqSQ1MfrUfUw,20489
97
+ AeroViz/plot/timeseries/__pycache__/__init__.cpython-312.pyc,sha256=HkHnJu5JEhl8i46hZk222_0y4nbwZRwN4eH-MgGrDD0,221
98
+ AeroViz/plot/timeseries/__pycache__/template.cpython-312.pyc,sha256=If4jwXA85vqFsYIHk5PHUX_FKtNG2mlseS05F-Wt4vQ,1919
99
+ AeroViz/plot/timeseries/__pycache__/timeseries.cpython-312.pyc,sha256=0KgQnyBTI2crGEEqmrFkVs0pG_QIRK1TAFDTT7shKig,20489
100
100
  AeroViz/plot/utils/__init__.py,sha256=sxp3nfUnyVIIXYd-F874gEHkhQiDnMPDE1nJ_Z98270,104
101
101
  AeroViz/plot/utils/_color.py,sha256=Vhjo-v4UWFME1JbbBR_Ro8FRj6dHB2O5Sud_9lpdu_U,2797
102
102
  AeroViz/plot/utils/_unit.py,sha256=Abum0WDnq08DzkSoxkKvBc0mYKo8izIDmgduPo9Q27A,1671
@@ -104,66 +104,68 @@ AeroViz/plot/utils/fRH.json,sha256=t-2ux4TLOYAB-4jJ72LSM4jv1jk9XkaxKYNMDepMHIg,6
104
104
  AeroViz/plot/utils/plt_utils.py,sha256=JYYtmEKoKqvZ8mr3QEHdYcWabaBMhNWkgEmeBTdZZ-g,3438
105
105
  AeroViz/plot/utils/sklearn_utils.py,sha256=hKFfkVkYLRxkIDKvO9COHXwhjD_UWqQigdT3mDToni4,2098
106
106
  AeroViz/plot/utils/units.json,sha256=JKcqvLA6dkc8REV_NhX85Jl9LA4iAZxzw9RJp6JTla0,2965
107
- AeroViz/plot/utils/__pycache__/__init__.cpython-312.pyc,sha256=T5PVG3dr2a9I13fe7B_gnit4JH6OvGyKyHWdCaEYnmk,292
108
- AeroViz/plot/utils/__pycache__/_color.cpython-312.pyc,sha256=GoKVOuUIq6SX-wsy8zRN0lrYwZYJNkSLbIptEkTqNSo,3959
109
- AeroViz/plot/utils/__pycache__/_unit.cpython-312.pyc,sha256=_tMbYRJAWNPPu6Vzw1i57nMGnQK9qjn1Iza5hGlS6kE,3427
110
- AeroViz/plot/utils/__pycache__/plt_utils.cpython-312.pyc,sha256=NwoX2bE8AYHVRBWX2BidbvxMx-445u6vC9nXUieQaoY,4670
111
- AeroViz/plot/utils/__pycache__/sklearn_utils.cpython-312.pyc,sha256=eRT8kPjc9fTi_mQaChfi4RxQS0t0aCPYkp8xZ0Kul0A,3018
112
- AeroViz/rawDataReader/__init__.py,sha256=2EFnj-aVQj7epo6PlJnKlYI09BB-2-YRKCt2Y7nzIT0,4891
113
- AeroViz/rawDataReader/__pycache__/__init__.cpython-312.pyc,sha256=74GHMN2iPysDyg6J-xJYyw2Pv7C95m9kk03D8oe5OJA,5519
107
+ AeroViz/plot/utils/__pycache__/__init__.cpython-312.pyc,sha256=48GH3dsOausTkbPDi5y7XJwGo6O6Bz-f_uH_yv4IvZI,292
108
+ AeroViz/plot/utils/__pycache__/_color.cpython-312.pyc,sha256=bEvI7vjN1ah3BHI_-0bz44QQ2lqFdkdwdQ-LAoS7JLQ,3959
109
+ AeroViz/plot/utils/__pycache__/_unit.cpython-312.pyc,sha256=Q2Q8jGZoVDkpNIrN1VkDc8-0Cz_K3YJcjcQhhNK7NAA,3427
110
+ AeroViz/plot/utils/__pycache__/plt_utils.cpython-312.pyc,sha256=zy7nh-n4gk0YQ6SVtAIzmYjZMPuKZ9JV7FxVBagfWYI,4670
111
+ AeroViz/plot/utils/__pycache__/sklearn_utils.cpython-312.pyc,sha256=kCSJAfVO3RSELBmM2JrMdj4Gx1rbrpZ4clVL1nV51v8,3018
112
+ AeroViz/rawDataReader/__init__.py,sha256=t5WQhsiMM3IifHwqTaGEfgsLZCVD76kdSasXOtN73Yk,6263
113
+ AeroViz/rawDataReader/__pycache__/__init__.cpython-312.pyc,sha256=ZaNg9gRxsf6SqYhhqH7xJXIxKXg6B4Uych4L8ff83EM,6994
114
114
  AeroViz/rawDataReader/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
- AeroViz/rawDataReader/config/supported_instruments.py,sha256=aMdYwl5zTqukuJT1BQT-kj_PtplL0xeJBIRoO-FYcFo,5983
116
- AeroViz/rawDataReader/config/__pycache__/__init__.cpython-312.pyc,sha256=QkaSeckdNGkjcYt67Vkgc9k7TPxVLl7d3uSDftIw8cM,171
117
- AeroViz/rawDataReader/config/__pycache__/supported_instruments.cpython-312.pyc,sha256=odu9ktO0Lamc91ZJFMCDwwqU3gjntgxqHr2SZANFljA,5192
118
- AeroViz/rawDataReader/core/__init__.py,sha256=7atDzK_SKfMWpTKPbfRO4r7l1vvsPOQ1ZcAmP-LEuuE,13259
119
- AeroViz/rawDataReader/core/logger.py,sha256=Mb7souR4ncbvWxi7mBjF3OflG1ZOI1l3atGkbgy1YLo,5809
120
- AeroViz/rawDataReader/core/qc.py,sha256=tFIVsfph8yZIK6NRKQxaZYHcruJclriKSvR0oC12T0Q,5698
121
- AeroViz/rawDataReader/core/__pycache__/__init__.cpython-312.pyc,sha256=2e2MGK-KzcrdqtZ9JmW5L_du1qT253UG_6IDePMne1I,19929
122
- AeroViz/rawDataReader/core/__pycache__/logger.cpython-312.pyc,sha256=9PWfUZo_XvimSJWx1Se7IKKtomhI7UkVjN0W6cwnNWY,8937
123
- AeroViz/rawDataReader/core/__pycache__/qc.cpython-312.pyc,sha256=djEzBJurrp6qCwnzJAq_O9ZSi0ix5i_qL_G7rElajwc,8271
124
- AeroViz/rawDataReader/script/AE33.py,sha256=EAC1neDgOaWxJyf-YgrAYUWU85NtAScbblFoSlmFtIU,1283
115
+ AeroViz/rawDataReader/config/supported_instruments.py,sha256=aGpAqgXKXvXzc8j7LA2m3UVthWsaBVbGxcaF7LKDdCY,5952
116
+ AeroViz/rawDataReader/config/__pycache__/__init__.cpython-312.pyc,sha256=xkBzxv2n8C5ZEOH9DqFxGXvJ2RnrmoZILLfqInEWGVk,171
117
+ AeroViz/rawDataReader/config/__pycache__/supported_instruments.cpython-312.pyc,sha256=mXeZDj7LNHRAnvDiI2L8yHf1lFIYn_EdT957PH6UEaM,5195
118
+ AeroViz/rawDataReader/core/__init__.py,sha256=EnWfGt-i4kFdgNKI0-K_HJ93lVzCMF08xFIVo9D2pvg,13372
119
+ AeroViz/rawDataReader/core/logger.py,sha256=tJ0lY-TCpDkbQ6aRyuJmEa25YyLD1hfpjDoEd3XD8WM,5975
120
+ AeroViz/rawDataReader/core/qc.py,sha256=lgTQm6AMdJj8QmovC1nfGb1NhZXE1LorhtSLGwLnJg8,5694
121
+ AeroViz/rawDataReader/core/__pycache__/__init__.cpython-312.pyc,sha256=mjW6ZdeytH7Y9kVe12trBABtShD89jNjI6F70XWfL5I,20342
122
+ AeroViz/rawDataReader/core/__pycache__/logger.cpython-312.pyc,sha256=teTZJuEARJvaDlnqcuQOe1ylLauh30PKLil2P3Y6aq0,9274
123
+ AeroViz/rawDataReader/core/__pycache__/qc.cpython-312.pyc,sha256=gby45q8uPWAe3HE2p21v0mq68R5co2mw39C_pcucEH4,8231
124
+ AeroViz/rawDataReader/script/AE33.py,sha256=L5AYtuJBC2aAe6muFc2wZADhtTKyBS_53p0LL1M1DHs,1286
125
125
  AeroViz/rawDataReader/script/AE43.py,sha256=GjcICBJ3nIANyMd4kovteBUtkyCGLTos07BczgSCuVE,1231
126
- AeroViz/rawDataReader/script/APS.py,sha256=ByA1Dw5mMMNKgZ0vUMNhJOLGIKhBFGEcR6i-UJl3ddU,1427
126
+ AeroViz/rawDataReader/script/APS.py,sha256=HrPRkE3DUFQ_dgGhZ4NHosW8vOvl0lqUlpaICn2EGbk,1527
127
127
  AeroViz/rawDataReader/script/Aurora.py,sha256=xcLKE5dlsqc-apK3n-j_8OZ0kF_f4B08ptutaAPiGLQ,1509
128
+ AeroViz/rawDataReader/script/BAM1020.py,sha256=lWZ4DdUK9EL1_Px9P42g-2vLbKSgzfjfUI1W0Fe7oxo,975
128
129
  AeroViz/rawDataReader/script/BC1054.py,sha256=tuDyq8M5BPbmu1yJr9zXYS2piMGz08yTQXGT6tK9jxA,1675
129
130
  AeroViz/rawDataReader/script/EPA.py,sha256=MESkZHHr60kyHFSLqSeSjzSrx_ya-GqFhFGlPIHMLeI,1649
130
131
  AeroViz/rawDataReader/script/GRIMM.py,sha256=-D4U83ihjAqcvOAnk7NET59IZfV1JzPYKRQjrIQyBDM,846
131
132
  AeroViz/rawDataReader/script/IGAC.py,sha256=i6WT3rX0n0e4hq7NfWN6tVwCuKAeV9ARxPkXZSbQj74,2387
132
133
  AeroViz/rawDataReader/script/MA350.py,sha256=EfPTFhgDAjI7r0G6kW7pjog-4MBOnvW0cyFqIkCxEP8,1597
133
134
  AeroViz/rawDataReader/script/Minion.py,sha256=lTn7VMmApmkGtbDMkTVXIGFp51Dw99Cd5c0bMQPIFl0,7872
134
- AeroViz/rawDataReader/script/NEPH.py,sha256=HkGcjFPpcXM9OnrcV6sMp0G5wYnhJP1NbTMQUb1zVLc,3233
135
- AeroViz/rawDataReader/script/OCEC.py,sha256=jEyVhz58iIZAV2VJQa0LVsAcZFgeNW6AaVzR26LVJ9k,3411
136
- AeroViz/rawDataReader/script/SMPS.py,sha256=5mc-2PSZh5mUjTvcZJMKzugNwD_h43JIhqnScYVEpZg,3285
137
- AeroViz/rawDataReader/script/TEOM.py,sha256=ID20CMi8z6pOjiGQLdCuCRWlcDu46SAP3MviiSUZE5w,2103
135
+ AeroViz/rawDataReader/script/NEPH.py,sha256=pDA-3u15ywKK49dVmgCafLM7RAO0hWIkMhS0867C77w,2898
136
+ AeroViz/rawDataReader/script/OCEC.py,sha256=z13CB8uoGuWFc_3yd6IEYpvhsTOqtsbChQy5nCo57hw,3432
137
+ AeroViz/rawDataReader/script/SMPS.py,sha256=X3yKNBOgEHmmMnPCmHTRv7JjLCZW4OSX8ZNZnMdWG8U,4017
138
+ AeroViz/rawDataReader/script/TEOM.py,sha256=0ugZ5calWjA_iVAbyJqi52jH9CzbpdwiOrfT1aswyJM,2730
138
139
  AeroViz/rawDataReader/script/VOC.py,sha256=GUme72ZyjSzREsFNUgOV_OCESIVJBXY9KrKP1c9Av7I,1248
139
140
  AeroViz/rawDataReader/script/XRF.py,sha256=SU1-D94GkwdkjlNXcyXbwQG1tOYCpeL6GTVkaLBHc-s,187
140
- AeroViz/rawDataReader/script/__init__.py,sha256=uV0SLBTJ2_KYJUaqKttTcZrLN1KCYqVZLobOLYZ0V5U,209
141
- AeroViz/rawDataReader/script/__pycache__/AE33.cpython-312.pyc,sha256=NJ-RXtT7nty79f4k186Fce5N7AmmmzdQPflKec7Xe8g,2448
142
- AeroViz/rawDataReader/script/__pycache__/AE43.cpython-312.pyc,sha256=njqOVElPCvzbT0G1oDIVd2nhGFzA7hv5DIfi5IrVlQE,2198
143
- AeroViz/rawDataReader/script/__pycache__/APS.cpython-312.pyc,sha256=zHXlZqIjlEWAIE9RjB8kg3U4KGj8ITIpmfV5hJV-r1Q,2664
144
- AeroViz/rawDataReader/script/__pycache__/Aurora.cpython-312.pyc,sha256=qkeFmzXlkVccBPjqvAi-OwFc5oeSpZWdgL9_nnVo96o,2662
145
- AeroViz/rawDataReader/script/__pycache__/BC1054.cpython-312.pyc,sha256=M2RyKsy22YfsWfUWx6fkBnlxWJQR1UesPwz2S1swaxA,2455
146
- AeroViz/rawDataReader/script/__pycache__/EPA.cpython-312.pyc,sha256=nuhlX25YYNygVqnzID3L7_SlAF4N58jIp6L7ReoAQCs,2343
147
- AeroViz/rawDataReader/script/__pycache__/GRIMM.cpython-312.pyc,sha256=B3Z77CWYrgvSTYyTFffDrW0XExo8C_rFDe_su6VN0gk,1812
148
- AeroViz/rawDataReader/script/__pycache__/IGAC.cpython-312.pyc,sha256=WIzqP5LKkCDktj3M5glD1E4ysTg8y6Y6mvSEe-nS_fQ,3645
149
- AeroViz/rawDataReader/script/__pycache__/MA350.cpython-312.pyc,sha256=MCkhH8bHu-iWksem4DmGwhOX9g7GBBZ69LbYLqwGk4c,2074
150
- AeroViz/rawDataReader/script/__pycache__/Minion.cpython-312.pyc,sha256=GUh3seuxUASm32Q_hBy1_ObLfwORNqLxOQFhdnzHwEs,10204
151
- AeroViz/rawDataReader/script/__pycache__/NEPH.cpython-312.pyc,sha256=IxVs-5zZHNedq1Ha4EXA4DjSwPK-DPuA_wBYhStgsv4,4556
152
- AeroViz/rawDataReader/script/__pycache__/OCEC.cpython-312.pyc,sha256=sh1jZKsxfcSouiEzTsO91TOcpua2wxT23cmyOzHEt4s,4155
153
- AeroViz/rawDataReader/script/__pycache__/SMPS.cpython-312.pyc,sha256=vjjLhDmplHP3GuGiTzXtBEO0l9p333xny16MlnAyMwc,5820
154
- AeroViz/rawDataReader/script/__pycache__/TEOM.cpython-312.pyc,sha256=11epZ5Jg_uGNeOLiu5n8m0tw-4Yl-Y4aI18Nbo80OI8,3329
155
- AeroViz/rawDataReader/script/__pycache__/VOC.cpython-312.pyc,sha256=I3J-Tlc_H6bzrkAoZL5pI_H_ouZ8Ibun0Wq2buJbA2U,2493
156
- AeroViz/rawDataReader/script/__pycache__/XRF.cpython-312.pyc,sha256=FnOuOxsB02FYVZv0Mr3KPof0SCiSzrEVwIw9vOwirpI,668
157
- AeroViz/rawDataReader/script/__pycache__/__init__.cpython-312.pyc,sha256=bqi0YtD_BJg7BOvpXvypXuWDk9q9r5iy4ipEpjVeICs,294
141
+ AeroViz/rawDataReader/script/__init__.py,sha256=OnLgK3LNumQHL4sa9A7EBMehNvcuZnx4cz203npwRLk,224
142
+ AeroViz/rawDataReader/script/__pycache__/AE33.cpython-312.pyc,sha256=GNYQ9rw-4wb5aEWmK7Sy-Rqq3jX8NJNUBOVtuMazKhE,2451
143
+ AeroViz/rawDataReader/script/__pycache__/AE43.cpython-312.pyc,sha256=3qf8k-_gjmZlN4S-ypKkFCnGX04qZz9AKI0JlF5DSUA,2198
144
+ AeroViz/rawDataReader/script/__pycache__/APS.cpython-312.pyc,sha256=XO8sDef8Ak0glC63bSjk3jprFQUVMbikFacjBWfD3YY,2877
145
+ AeroViz/rawDataReader/script/__pycache__/Aurora.cpython-312.pyc,sha256=EkFvSuN8Q8D2TtlKUbXscE7l-hHKV6gku0HPpTQoIvU,2662
146
+ AeroViz/rawDataReader/script/__pycache__/BAM1020.cpython-312.pyc,sha256=XDIyhbY3VNcAgQuM8jVwM65Y2USQjfMOHag4yxmkeZ4,1858
147
+ AeroViz/rawDataReader/script/__pycache__/BC1054.cpython-312.pyc,sha256=QqjXZvtoVGGZmDFWcW5FwXkWLh2sV6JhvQepeCQ-TJc,2455
148
+ AeroViz/rawDataReader/script/__pycache__/EPA.cpython-312.pyc,sha256=9KW9T9SDdEiv6l3cvSogCKgIHdVnFMp43WF8z26dhw8,2343
149
+ AeroViz/rawDataReader/script/__pycache__/GRIMM.cpython-312.pyc,sha256=MdkgSK-JVRcEeSnhB5B3ZIL4ghsSlN1GyxzWh1fdAy8,1812
150
+ AeroViz/rawDataReader/script/__pycache__/IGAC.cpython-312.pyc,sha256=BdR7YH3iXIIgKk6ETj_49GD5neTifw1aEgjQUfVc7NY,3645
151
+ AeroViz/rawDataReader/script/__pycache__/MA350.cpython-312.pyc,sha256=0dQPlRlDFnKmo1clXiSSxaEXRE_ZK-uACSKQgQSI3pM,2074
152
+ AeroViz/rawDataReader/script/__pycache__/Minion.cpython-312.pyc,sha256=pK5ZWwxd58ZxPWAA6lmjlZfyDI7Qdtha4wOx9pJ-zU8,10204
153
+ AeroViz/rawDataReader/script/__pycache__/NEPH.cpython-312.pyc,sha256=rNytCwg15X35xBat0AZlaXhW7HiQlj1I7PfUZES9Ffc,4520
154
+ AeroViz/rawDataReader/script/__pycache__/OCEC.cpython-312.pyc,sha256=wWtGtOQvryBro7wvbZO3glX2XvPqOp71ONYje5dLYog,4179
155
+ AeroViz/rawDataReader/script/__pycache__/SMPS.cpython-312.pyc,sha256=TR47Uh6-mwNsV0RYWzg85to9qs57b9ZFRop-1YRhMzQ,6307
156
+ AeroViz/rawDataReader/script/__pycache__/TEOM.cpython-312.pyc,sha256=I-DAl84UdP6Sh8iQr_Fq9vXfogtnT-ETAobWClWOEQc,3781
157
+ AeroViz/rawDataReader/script/__pycache__/VOC.cpython-312.pyc,sha256=1HlyLt-gqEshNwGIK679iheHVjTriwsTQvzJY8tk5fg,2493
158
+ AeroViz/rawDataReader/script/__pycache__/XRF.cpython-312.pyc,sha256=Am5yzszAcs9I6z0s02EbWgkTlJmWLBRHfKURcsonupQ,668
159
+ AeroViz/rawDataReader/script/__pycache__/__init__.cpython-312.pyc,sha256=Rg7O3EdTvOmYvSFO_mY26moNilXguDFcKyesEZbEg7A,303
158
160
  AeroViz/tools/__init__.py,sha256=3yC7clSoIAs7tvRy6M0BEM_N-0Fn2najLP7njT0ogME,74
159
161
  AeroViz/tools/database.py,sha256=05VzjJyhlRrhsZdhfFQ__7CxGm4MdFekLjz3_Is5h9U,3430
160
162
  AeroViz/tools/dataclassifier.py,sha256=_wpv0PlZ5EGkcNqHxfFtdEsYvHP5FVE8sMZXikhm_YE,4492
161
163
  AeroViz/tools/dataprinter.py,sha256=Jq2Yztpa9YCOeLDVTrRs7PhSdNIPhEAexVj1YSuJ7hY,2249
162
- AeroViz/tools/__pycache__/__init__.cpython-312.pyc,sha256=90jf5A4wGSIKZ9KVtB1AlY5glm_gf_tyVmGU3tczLXI,254
163
- AeroViz/tools/__pycache__/database.cpython-312.pyc,sha256=mVtYd5jXm04bLyGg6QVBD6b8ebd-UZtOUU9KzoxTpjw,3605
164
- AeroViz/tools/__pycache__/dataclassifier.cpython-312.pyc,sha256=kmxMueg1IW5tKELGAQMhEoPtk7GBkfju-xU35REto7E,6801
165
- AeroViz-0.1.12.dist-info/LICENSE,sha256=E-679GpGGkp3irmtuJXiT7R4cNUA4cmsH6Q7QUgPf5U,1069
166
- AeroViz-0.1.12.dist-info/METADATA,sha256=yin7FLd3KuzHVs2L1CO36EFwT-rMuergmkzwv-5_qVE,5914
167
- AeroViz-0.1.12.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
168
- AeroViz-0.1.12.dist-info/top_level.txt,sha256=BYsmTst_o4FZOKRP1XIvIMlN6mMTTXNfnSToL2_nVbQ,8
169
- AeroViz-0.1.12.dist-info/RECORD,,
164
+ AeroViz/tools/__pycache__/__init__.cpython-312.pyc,sha256=kPks2q6rZVoYBz4pqiETuWojLXXm5D41Zy1VkGomT2Y,254
165
+ AeroViz/tools/__pycache__/database.cpython-312.pyc,sha256=Q61oPgz466-5DswrXKHDGJAZ46CaM2lZOM9VwRkQgNM,3605
166
+ AeroViz/tools/__pycache__/dataclassifier.cpython-312.pyc,sha256=eDkli6vgNRZO2gMKWE08VqwEeisUSaJdTmEEnHkF7Rk,6801
167
+ AeroViz-0.1.14.dist-info/LICENSE,sha256=E-679GpGGkp3irmtuJXiT7R4cNUA4cmsH6Q7QUgPf5U,1069
168
+ AeroViz-0.1.14.dist-info/METADATA,sha256=FKD123D1XZ4PfxyBoF7j1jUzdfvaRavyGHETdny64LU,5934
169
+ AeroViz-0.1.14.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
170
+ AeroViz-0.1.14.dist-info/top_level.txt,sha256=BYsmTst_o4FZOKRP1XIvIMlN6mMTTXNfnSToL2_nVbQ,8
171
+ AeroViz-0.1.14.dist-info/RECORD,,