pyadps 0.1.1__py3-none-any.whl → 0.1.3__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 (33) hide show
  1. pyadps/pages/01_Read_File.py +3 -2
  2. pyadps/pages/03_Download_Raw_File.py +69 -24
  3. pyadps/pages/05_QC_Test.py +20 -3
  4. pyadps/pages/06_Profile_Test.py +10 -10
  5. pyadps/pages/08_Write_File.py +26 -5
  6. pyadps/utils/autoprocess.py +10 -5
  7. pyadps/utils/metadata/flmeta.json +420 -420
  8. pyadps/utils/plotgen.py +1 -1
  9. pyadps/utils/profile_test.py +228 -2
  10. pyadps/utils/pyreadrdi.py +112 -83
  11. pyadps/utils/readrdi.py +34 -3
  12. pyadps/utils/signal_quality.py +16 -4
  13. pyadps/utils/writenc.py +101 -52
  14. {pyadps-0.1.1.dist-info → pyadps-0.1.3.dist-info}/METADATA +1 -1
  15. pyadps-0.1.3.dist-info/RECORD +33 -0
  16. pyadps/pages/__pycache__/__init__.cpython-312.pyc +0 -0
  17. pyadps/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  18. pyadps/utils/__pycache__/autoprocess.cpython-312.pyc +0 -0
  19. pyadps/utils/__pycache__/cutbin.cpython-312.pyc +0 -0
  20. pyadps/utils/__pycache__/plotgen.cpython-312.pyc +0 -0
  21. pyadps/utils/__pycache__/profile_test.cpython-312.pyc +0 -0
  22. pyadps/utils/__pycache__/pyreadrdi.cpython-312.pyc +0 -0
  23. pyadps/utils/__pycache__/readrdi.cpython-312.pyc +0 -0
  24. pyadps/utils/__pycache__/regrid.cpython-312.pyc +0 -0
  25. pyadps/utils/__pycache__/script.cpython-312.pyc +0 -0
  26. pyadps/utils/__pycache__/sensor_health.cpython-312.pyc +0 -0
  27. pyadps/utils/__pycache__/signal_quality.cpython-312.pyc +0 -0
  28. pyadps/utils/__pycache__/velocity_test.cpython-312.pyc +0 -0
  29. pyadps/utils/__pycache__/writenc.cpython-312.pyc +0 -0
  30. pyadps-0.1.1.dist-info/RECORD +0 -47
  31. {pyadps-0.1.1.dist-info → pyadps-0.1.3.dist-info}/LICENSE +0 -0
  32. {pyadps-0.1.1.dist-info → pyadps-0.1.3.dist-info}/WHEEL +0 -0
  33. {pyadps-0.1.1.dist-info → pyadps-0.1.3.dist-info}/entry_points.txt +0 -0
@@ -54,7 +54,7 @@ def qc_check(var, mask, cutoff=0):
54
54
  return mask
55
55
 
56
56
 
57
- def correlation_check(ds, mask, cutoff=64):
57
+ def correlation_check(ds, mask, cutoff,threebeam,beam_ignore=None):
58
58
  """
59
59
  Perform an correlation check on the provided variable and update the
60
60
  mask to mark valid and invalid values based on a cutoff threshold.
@@ -93,10 +93,15 @@ def correlation_check(ds, mask, cutoff=64):
93
93
  >>> outmask = correlation_check(ds, mask, cutoff=9999)
94
94
  """
95
95
  correlation = ds.correlation.data
96
+ if threebeam ==True:
97
+ if beam_ignore == None:
98
+ correlation = correlation
99
+ else:
100
+ correlation = np.delete(correlation,beam_ignore,axis=0)
96
101
  mask = qc_check(correlation, mask, cutoff=cutoff)
97
102
  return mask
98
103
 
99
- def echo_check(ds, mask, cutoff=40):
104
+ def echo_check(ds, mask, cutoff, threebeam, beam_ignore=None):
100
105
  """
101
106
  Perform an echo intensity check on the provided variable and update the
102
107
  mask to mark valid and invalid values based on a cutoff threshold.
@@ -137,6 +142,11 @@ def echo_check(ds, mask, cutoff=40):
137
142
  """
138
143
 
139
144
  echo = ds.echo.data
145
+ if threebeam ==True:
146
+ if beam_ignore == None:
147
+ echo = echo
148
+ else:
149
+ echo = np.delete(echo,beam_ignore,axis=0)
140
150
  mask = qc_check(echo, mask, cutoff=cutoff)
141
151
  return mask
142
152
 
@@ -246,7 +256,7 @@ def pg_check(ds, mask, cutoff=0, threebeam=True):
246
256
  return mask
247
257
 
248
258
 
249
- def false_target(ds, mask, cutoff=255, threebeam=True):
259
+ def false_target(ds, mask, cutoff=255, threebeam=True, beam_ignore=None):
250
260
  """
251
261
  Apply a false target detection algorithm based on echo intensity values.
252
262
  This function identifies invalid or false targets in the data and updates
@@ -292,12 +302,14 @@ def false_target(ds, mask, cutoff=255, threebeam=True):
292
302
  """
293
303
 
294
304
  echo = ds.echo.data
305
+ if beam_ignore != None:
306
+ echo = np.delete(echo,beam_ignore, axis=0)
295
307
 
296
308
  shape = np.shape(echo)
297
309
  for i in range(shape[1]):
298
310
  for j in range(shape[2]):
299
311
  x = np.sort(echo[:, i, j])
300
- if threebeam:
312
+ if threebeam and beam_ignore is None:
301
313
  if x[-1] - x[1] > cutoff:
302
314
  mask[i, j] = 1
303
315
  else:
pyadps/utils/writenc.py CHANGED
@@ -70,8 +70,8 @@ def flead_ncatt(fl_obj, ncfile_id, ens=0):
70
70
  def rawnc(
71
71
  infile,
72
72
  outfile,
73
- time,
74
- axis_option=None,
73
+ axis_option="time",
74
+ fixensemble=True,
75
75
  attributes=None,
76
76
  t0="hours since 2000-01-01",
77
77
  ):
@@ -91,7 +91,12 @@ def rawnc(
91
91
 
92
92
  outnc = nc4.Dataset(outfile, "w", format="NETCDF4")
93
93
 
94
- flead = rd.FixedLeader(infile)
94
+ ds = rd.ReadFile(infile)
95
+ if fixensemble and not ds.isFixedEnsemble:
96
+ ds.fixensemble()
97
+
98
+ head = ds.fileheader
99
+ flead = ds.fixedleader
95
100
  cell_list = flead.fleader["Cells"]
96
101
  beam_list = flead.fleader["Beams"]
97
102
 
@@ -102,8 +107,11 @@ def rawnc(
102
107
  primary_axis = "ensemble"
103
108
  ensemble = outnc.createVariable("ensemble", "i4", ("ensemble",))
104
109
  ensemble.axis = "T"
110
+ # Add ensemble
111
+ total_ensembles = ds.ensembles
112
+ ensemble = np.arange(1, total_ensembles + 1, 1)
105
113
  elif axis_option == "time":
106
- tsize = len(time)
114
+ tsize = ds.ensembles
107
115
  outnc.createDimension("time", tsize)
108
116
  primary_axis = "time"
109
117
  time_var = outnc.createVariable("time", "i4", ("time",))
@@ -112,6 +120,7 @@ def rawnc(
112
120
  time_var.long_name = "time"
113
121
 
114
122
  # Convert time_data to numerical format
123
+ time = ds.time
115
124
  nctime = pd2nctime(time, t0)
116
125
  time_var[:] = nctime
117
126
 
@@ -134,7 +143,7 @@ def rawnc(
134
143
  cell[:] = np.arange(1, max(cell_list) + 1, 1)
135
144
  beam[:] = np.arange(1, max(beam_list) + 1, 1)
136
145
 
137
- varlist = rd.FileHeader(infile).data_types(1)
146
+ varlist = head.data_types(1)
138
147
  varlist.remove("Fixed Leader")
139
148
  varlist.remove("Variable Leader")
140
149
 
@@ -145,10 +154,8 @@ def rawnc(
145
154
  varid[i] = outnc.createVariable(
146
155
  item, "i2", (primary_axis, "cell", "beam"), fill_value=-32768
147
156
  )
148
- # varid[i].missing_value = -32768
149
- vel = getattr(rd, item)
150
- var = vel(infile).data
151
- # var = rd.variables(infile, item)
157
+ vel = getattr(ds, item.lower())
158
+ var = vel.data
152
159
 
153
160
  else:
154
161
  # Unsigned integers might be assigned for future netcdf versions
@@ -156,14 +163,10 @@ def rawnc(
156
163
  varid[i] = outnc.createVariable(
157
164
  format_item, "i2", (primary_axis, "cell", "beam")
158
165
  )
159
- datatype = getattr(rd, format_item)
160
- var = np.array(datatype(infile).data, dtype="int16")
161
- # var = np.array(rd.variables(infile, item), dtype="int16")
166
+ datatype = getattr(ds, format_item.lower())
167
+ var = np.array(datatype.data, dtype="int16")
162
168
 
163
169
  vshape = var.T.shape
164
- if i == 0:
165
- if primary_axis == "ensemble":
166
- ensemble[:] = np.arange(1, vshape[0] + 1, 1)
167
170
 
168
171
  varid[i][0 : vshape[0], 0 : vshape[1], 0 : vshape[2]] = var.T
169
172
 
@@ -179,11 +182,12 @@ def rawnc(
179
182
 
180
183
  outnc.close()
181
184
 
185
+
182
186
  def flead_nc(
183
187
  infile,
184
188
  outfile,
185
- time,
186
- axis_option=None,
189
+ axis_option="time",
190
+ fixensemble=True,
187
191
  attributes=None,
188
192
  t0="hours since 2000-01-01",
189
193
  ):
@@ -196,6 +200,11 @@ def flead_nc(
196
200
  """
197
201
  outnc = nc4.Dataset(outfile, "w", format="NETCDF4")
198
202
 
203
+ # Read Binary File
204
+ ds = rd.ReadFile(infile)
205
+ if fixensemble:
206
+ ds.fixensemble()
207
+ flead = ds.fixedleader
199
208
  # Dimensions
200
209
  # Define the primary axis based on axis_option
201
210
  if axis_option == "ensemble":
@@ -203,8 +212,12 @@ def flead_nc(
203
212
  primary_axis = "ensemble"
204
213
  ensemble = outnc.createVariable("ensemble", "i4", ("ensemble",))
205
214
  ensemble.axis = "T"
215
+ # Add ensemble
216
+ total_ensembles = ds.ensembles
217
+ ensemble = np.arange(1, total_ensembles + 1, 1)
218
+
206
219
  elif axis_option == "time":
207
- tsize = len(time)
220
+ tsize = ds.ensembles
208
221
  outnc.createDimension("time", tsize)
209
222
  primary_axis = "time"
210
223
  time_var = outnc.createVariable("time", "i4", ("time",))
@@ -213,6 +226,7 @@ def flead_nc(
213
226
  time_var.long_name = "time"
214
227
 
215
228
  # Convert time_data to numerical format
229
+ time = ds.time
216
230
  nctime = pd2nctime(time, t0)
217
231
  time_var[:] = nctime
218
232
 
@@ -220,8 +234,6 @@ def flead_nc(
220
234
  raise ValueError(f"Invalid axis_option: {axis_option}.")
221
235
 
222
236
  # Variables
223
-
224
- flead = rd.FixedLeader(infile)
225
237
  fdict = flead.fleader
226
238
  varid = [0] * len(fdict)
227
239
 
@@ -234,9 +246,6 @@ def flead_nc(
234
246
  )
235
247
  var = values
236
248
  vshape = var.shape
237
- if i == 0:
238
- if primary_axis == "ensemble":
239
- ensemble[:] = np.arange(1, vshape[0] + 1, 1)
240
249
 
241
250
  varid[i][0 : vshape[0]] = var
242
251
  i += 1
@@ -248,11 +257,12 @@ def flead_nc(
248
257
 
249
258
  outnc.close()
250
259
 
260
+
251
261
  def vlead_nc(
252
262
  infile,
253
263
  outfile,
254
- time,
255
- axis_option=None,
264
+ axis_option="time",
265
+ fixensemble=True,
256
266
  attributes=None,
257
267
  t0="hours since 2000-01-01",
258
268
  ):
@@ -263,8 +273,14 @@ def vlead_nc(
263
273
  infile (string): Input file path including filename
264
274
  outfile (string): Output file path including filename
265
275
  """
276
+ # Create output NetCDF File
266
277
  outnc = nc4.Dataset(outfile, "w", format="NETCDF4")
267
278
 
279
+ # Read Binary File
280
+ ds = rd.ReadFile(infile)
281
+ if fixensemble:
282
+ ds.fixensemble()
283
+ vlead = ds.variableleader
268
284
  # Dimensions
269
285
  # Define the primary axis based on axis_option
270
286
  if axis_option == "ensemble":
@@ -272,8 +288,11 @@ def vlead_nc(
272
288
  primary_axis = "ensemble"
273
289
  ensemble = outnc.createVariable("ensemble", "i4", ("ensemble",))
274
290
  ensemble.axis = "T"
291
+ # Add ensemble
292
+ total_ensembles = ds.ensembles
293
+ ensemble = np.arange(1, total_ensembles + 1, 1)
275
294
  elif axis_option == "time":
276
- tsize = len(time)
295
+ tsize = ds.ensembles
277
296
  outnc.createDimension("time", tsize)
278
297
  primary_axis = "time"
279
298
  time_var = outnc.createVariable("time", "i4", ("time",))
@@ -282,15 +301,14 @@ def vlead_nc(
282
301
  time_var.long_name = "time"
283
302
 
284
303
  # Convert time_data to numerical format
304
+ time = ds.time
285
305
  nctime = pd2nctime(time, t0)
286
306
  time_var[:] = nctime
287
307
 
288
308
  else:
289
309
  raise ValueError(f"Invalid axis_option: {axis_option}.")
290
310
 
291
- # Variables
292
-
293
- vlead = rd.VariableLeader(infile)
311
+ # Read Data
294
312
  vdict = vlead.vleader
295
313
  varid = [0] * len(vdict)
296
314
 
@@ -302,12 +320,10 @@ def vlead_nc(
302
320
  format_item, "i4", primary_axis, fill_value=-32768
303
321
  )
304
322
  var = values
305
- vshape = var.shape
306
- if i == 0:
307
- if primary_axis == "ensemble":
308
- ensemble[:] = np.arange(1, vshape[0] + 1, 1)
323
+ # vshape = var.shape
309
324
 
310
- varid[i][0 : vshape[0]] = var
325
+ varid[i][0 : ds.ensembles] = var
326
+ # varid[i][0 : vshape[0]] = var
311
327
  i += 1
312
328
 
313
329
  # Add global attributes if provided
@@ -319,7 +335,16 @@ def vlead_nc(
319
335
 
320
336
 
321
337
  def finalnc(
322
- outfile, depth, final_mask, final_echo, final_corr , final_pgood, time, data, t0="hours since 2000-01-01", attributes=None
338
+ outfile,
339
+ depth,
340
+ final_mask,
341
+ final_echo,
342
+ final_corr,
343
+ final_pgood,
344
+ time,
345
+ data,
346
+ t0="hours since 2000-01-01",
347
+ attributes=None,
323
348
  ):
324
349
  """
325
350
  Function to create the processed NetCDF file.
@@ -345,9 +370,9 @@ def finalnc(
345
370
  depth = depth[::-1]
346
371
  data = data[:, ::-1, :]
347
372
  final_mask = final_mask[::-1, :]
348
- final_echo = final_echo[:,::-1, :]
349
- final_corr = final_corr[:,::-1, :]
350
- final_pgood = final_pgood[:,::-1, :]
373
+ final_echo = final_echo[:, ::-1, :]
374
+ final_corr = final_corr[:, ::-1, :]
375
+ final_pgood = final_pgood[:, ::-1, :]
351
376
 
352
377
  ncfile = nc4.Dataset(outfile, mode="w", format="NETCDF4")
353
378
  # Check if depth is scalar or array
@@ -390,41 +415,65 @@ def finalnc(
390
415
  mvel = ncfile.createVariable("mask", np.float32, ("time", "depth"), fill_value=fill)
391
416
  mvel.long_name = "Velocity Mask (1: bad value, 0: good value)"
392
417
 
393
- echo1 = ncfile.createVariable("echo1", np.float32, ("time", "depth"), fill_value=-32768)
418
+ echo1 = ncfile.createVariable(
419
+ "echo1", np.float32, ("time", "depth"), fill_value=-32768
420
+ )
394
421
  echo1.long_name = "Echo intensity Beam 1"
395
422
 
396
- echo2 = ncfile.createVariable("echo2", np.float32, ("time", "depth"), fill_value=-32768)
423
+ echo2 = ncfile.createVariable(
424
+ "echo2", np.float32, ("time", "depth"), fill_value=-32768
425
+ )
397
426
  echo2.long_name = "Echo intensity Beam 2"
398
427
 
399
- echo3 = ncfile.createVariable("echo3", np.float32, ("time", "depth"), fill_value=-32768)
428
+ echo3 = ncfile.createVariable(
429
+ "echo3", np.float32, ("time", "depth"), fill_value=-32768
430
+ )
400
431
  echo3.long_name = "Echo intensity Beam 3"
401
432
 
402
- echo4 = ncfile.createVariable("echo4", np.float32, ("time", "depth"), fill_value=-32768)
433
+ echo4 = ncfile.createVariable(
434
+ "echo4", np.float32, ("time", "depth"), fill_value=-32768
435
+ )
403
436
  echo4.long_name = "Echo intensity Beam 4"
404
437
 
405
- corr1 = ncfile.createVariable("corr1", np.float32, ("time", "depth"), fill_value=-32768)
438
+ corr1 = ncfile.createVariable(
439
+ "corr1", np.float32, ("time", "depth"), fill_value=-32768
440
+ )
406
441
  corr1.long_name = "Beam 1 correlation"
407
442
 
408
- corr2 = ncfile.createVariable("corr2", np.float32, ("time", "depth"), fill_value=-32768)
443
+ corr2 = ncfile.createVariable(
444
+ "corr2", np.float32, ("time", "depth"), fill_value=-32768
445
+ )
409
446
  corr2.long_name = "Beam 2 correlation"
410
447
 
411
- corr3 = ncfile.createVariable("corr3", np.float32, ("time", "depth"), fill_value=-32768)
448
+ corr3 = ncfile.createVariable(
449
+ "corr3", np.float32, ("time", "depth"), fill_value=-32768
450
+ )
412
451
  corr3.long_name = "Beam 3 correlation"
413
452
 
414
- corr4 = ncfile.createVariable("corr4", np.float32, ("time", "depth"), fill_value=-32768)
415
- corr4.long_name = "Beam 4 correlation"
453
+ corr4 = ncfile.createVariable(
454
+ "corr4", np.float32, ("time", "depth"), fill_value=-32768
455
+ )
456
+ corr4.long_name = "Beam 4 correlation"
416
457
 
417
- pgd1 = ncfile.createVariable("pgd1", np.float32, ("time", "depth"), fill_value=-32768)
458
+ pgd1 = ncfile.createVariable(
459
+ "pgd1", np.float32, ("time", "depth"), fill_value=-32768
460
+ )
418
461
  pgd1.long_name = "Percent Good Beam 1"
419
462
 
420
- pgd2 = ncfile.createVariable("pgd2", np.float32, ("time", "depth"), fill_value=-32768)
463
+ pgd2 = ncfile.createVariable(
464
+ "pgd2", np.float32, ("time", "depth"), fill_value=-32768
465
+ )
421
466
  pgd2.long_name = "Percent Good Beam 2"
422
467
 
423
- pgd3 = ncfile.createVariable("pgd3", np.float32, ("time", "depth"), fill_value=-32768)
468
+ pgd3 = ncfile.createVariable(
469
+ "pgd3", np.float32, ("time", "depth"), fill_value=-32768
470
+ )
424
471
  pgd3.long_name = "Percent Good Beam 3"
425
472
 
426
- pgd4 = ncfile.createVariable("pgd4", np.float32, ("time", "depth"), fill_value=-32768)
427
- pgd4.long_name = "Percent Good Beam 4"
473
+ pgd4 = ncfile.createVariable(
474
+ "pgd4", np.float32, ("time", "depth"), fill_value=-32768
475
+ )
476
+ pgd4.long_name = "Percent Good Beam 4"
428
477
 
429
478
  nctime = pd2nctime(time, t0)
430
479
  # write data
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyadps
3
- Version: 0.1.1
3
+ Version: 0.1.3
4
4
  Summary: A Python package for ADCP data processing
5
5
  Home-page: https://pyadps.readthedocs.io/en/latest/index.html
6
6
  License: MIT
@@ -0,0 +1,33 @@
1
+ pyadps/Home_Page.py,sha256=j_-3fsp1hkhpNEl5jE-CEQvClDGpMi1H3ZQPXfuKWBg,1782
2
+ pyadps/__init__.py,sha256=bNCm6_WIhiwvaUeOZhRkyLZyzzUKfSH80Fslg0JPJyk,232
3
+ pyadps/__main__.py,sha256=cIFUayxPnKl00oIR99L6IUEvc8trW7dijtfBQCAen5c,356
4
+ pyadps/pages/01_Read_File.py,sha256=swujYGZvQX30zcccWhn5MiFVY_MBUYXuZ9_8GtvpQI4,14421
5
+ pyadps/pages/02_View_Raw_Data.py,sha256=AhT7gvDbcMRPf-WIBzTQ0o-nn9_q7NH6plTlpMtgzaY,6170
6
+ pyadps/pages/03_Download_Raw_File.py,sha256=ebZu17STL3HhM8ExQvSWNfquI2CrmdJPxOeNjV-lvvU,12214
7
+ pyadps/pages/04_Sensor_Health.py,sha256=2Qnwl7D46H-f8LmXLVZj5X36h8MjRwmVRK6Bs_wuB_k,33905
8
+ pyadps/pages/05_QC_Test.py,sha256=6YjQTg_t0_Qll9xQ3SYieCBS2cDEMz9znovW3olPFwc,16566
9
+ pyadps/pages/06_Profile_Test.py,sha256=Vir91oRIWApbO2elBm4I59rdf83NtspUmtzAyWdsIiY,34891
10
+ pyadps/pages/07_Velocity_Test.py,sha256=K4vEiLPMXrU4JMLj-mIA1G4H5ORozMbHMiMov3ZZXP0,23008
11
+ pyadps/pages/08_Write_File.py,sha256=dehT7x68b0bzDDiTSE7W0cav4JdvoB1Awicip711hGY,23079
12
+ pyadps/pages/09_Auto_process.py,sha256=SRtQVD9_kodlSvYdF9-02ur6EaWG2zMvN6-BcWdzYV8,1874
13
+ pyadps/pages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ pyadps/utils/__init__.py,sha256=nCqRp-OT_1BC7RnL3ARUIldlw9sWyr1XqQvQid-B4ts,407
15
+ pyadps/utils/autoprocess.py,sha256=r6SZwx-FPV9Fp1DzuLfH06X5zStWVIi94182juebxfA,20374
16
+ pyadps/utils/metadata/config.ini,sha256=TC7htzGwUukIXt_u3JR5ycyvOoDj_JxWgGY6khjNeck,2154
17
+ pyadps/utils/metadata/demo.000,sha256=qxB3sgjABrpv4DNXkwjpbSxk5sc4UwAI8kgQX0--PM8,234468
18
+ pyadps/utils/metadata/flmeta.json,sha256=eGw1lM5IKhZ6IuSkj7PiKQ-MpNtH446HaRmcby8rBIY,12673
19
+ pyadps/utils/metadata/vlmeta.json,sha256=_dkQlGkkUvpAIM7S6kEUenSaiCpOrwXg8n1aU3dDF3s,22535
20
+ pyadps/utils/plotgen.py,sha256=c7TUA9unErUxppYc14LZ2o_stzNMmmZ5X542iI5v1tA,26346
21
+ pyadps/utils/profile_test.py,sha256=gnbS6ZsqKvv2tcHTj-Fi_VNOszbxDcPxl77_n4dLzSo,29237
22
+ pyadps/utils/pyreadrdi.py,sha256=VwypCpKGfjTO0h0j_Vl1-JMhXooiaXnmQHmEFVPifGo,36886
23
+ pyadps/utils/readrdi.py,sha256=CfmZns5W8OZVE7u_PzdwpsFrjf8dmACg1_9OM6woPyk,51251
24
+ pyadps/utils/script.py,sha256=TKMCYe0HEz-2GFpNxKVzpg0p4MM-Cu2rcMZc51GgLn4,6534
25
+ pyadps/utils/sensor_health.py,sha256=aHRaU4kMJZ9dGmYypKpCCgq-owWoNjvcl1I_9I7dG68,3973
26
+ pyadps/utils/signal_quality.py,sha256=BYPAbXrAPGQBEfEyG4PFktYpqxuvhoafsWM172TVn08,16737
27
+ pyadps/utils/velocity_test.py,sha256=O8dgjv_5pxhJq6QuWHxysMjNzxSnob_2KPLInmO1kHI,6112
28
+ pyadps/utils/writenc.py,sha256=KDolQ11Whh2bi4L2wfrgjXym5BWL8ikp0xvo4Pa0r4E,14455
29
+ pyadps-0.1.3.dist-info/LICENSE,sha256=sfY_7DzQF5FxnO2T6ek74dfm5uBmwEp1oEg_WlzNsb8,1092
30
+ pyadps-0.1.3.dist-info/METADATA,sha256=F49hGNEXebr0Q8M0ul29c6HoB4ColJFetU03OGinEgg,4518
31
+ pyadps-0.1.3.dist-info/WHEEL,sha256=RaoafKOydTQ7I_I3JTrPCg6kUmTgtm4BornzOqyEfJ8,88
32
+ pyadps-0.1.3.dist-info/entry_points.txt,sha256=-oZhbbJq8Q29uNVh5SmzOLp9OeFM9VUzHVxovfI4LXA,126
33
+ pyadps-0.1.3.dist-info/RECORD,,
@@ -1,47 +0,0 @@
1
- pyadps/Home_Page.py,sha256=j_-3fsp1hkhpNEl5jE-CEQvClDGpMi1H3ZQPXfuKWBg,1782
2
- pyadps/__init__.py,sha256=bNCm6_WIhiwvaUeOZhRkyLZyzzUKfSH80Fslg0JPJyk,232
3
- pyadps/__main__.py,sha256=cIFUayxPnKl00oIR99L6IUEvc8trW7dijtfBQCAen5c,356
4
- pyadps/pages/01_Read_File.py,sha256=4LUeSEumOtsGpsEdPdeRq5msHP91JqdZXcJB_PJHPXo,14373
5
- pyadps/pages/02_View_Raw_Data.py,sha256=AhT7gvDbcMRPf-WIBzTQ0o-nn9_q7NH6plTlpMtgzaY,6170
6
- pyadps/pages/03_Download_Raw_File.py,sha256=A17wxNTHZC1Oi51S0fa2uLTBQsRTWRjDZQjFb2l78uI,10721
7
- pyadps/pages/04_Sensor_Health.py,sha256=2Qnwl7D46H-f8LmXLVZj5X36h8MjRwmVRK6Bs_wuB_k,33905
8
- pyadps/pages/05_QC_Test.py,sha256=8wt7h-RHLOf3GZ8-B_kXA0IqzHTBwW_H7YQFEk5EM6E,15904
9
- pyadps/pages/06_Profile_Test.py,sha256=zH2TdpEzRFUiXSDQGfdeSsGYAihdCRuj4YgsedB61E0,34776
10
- pyadps/pages/07_Velocity_Test.py,sha256=K4vEiLPMXrU4JMLj-mIA1G4H5ORozMbHMiMov3ZZXP0,23008
11
- pyadps/pages/08_Write_File.py,sha256=ghzxAaIrnArb04Mvn4b4jNu1ewZ-U9V8uZQAFuO6DZc,22255
12
- pyadps/pages/09_Auto_process.py,sha256=SRtQVD9_kodlSvYdF9-02ur6EaWG2zMvN6-BcWdzYV8,1874
13
- pyadps/pages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- pyadps/pages/__pycache__/__init__.cpython-312.pyc,sha256=6pMyqdclo2Qu_4JRR0WGzppdaQyxFUIBQbciBi14wgw,157
15
- pyadps/utils/__init__.py,sha256=nCqRp-OT_1BC7RnL3ARUIldlw9sWyr1XqQvQid-B4ts,407
16
- pyadps/utils/__pycache__/__init__.cpython-312.pyc,sha256=1FNTM005xyJOn2eJ9-kn8rJjD215cvgy3Cc-Xb-apf0,545
17
- pyadps/utils/__pycache__/autoprocess.cpython-312.pyc,sha256=s_f3V09eFxcGWaGNHiXADgBs1OaWhGz6ypEdkVV4rpg,17996
18
- pyadps/utils/__pycache__/cutbin.cpython-312.pyc,sha256=Fu6VQQL0rjRkvrSS8qLmU8ctaz-Y-juw2b6fcIuS30g,28442
19
- pyadps/utils/__pycache__/plotgen.cpython-312.pyc,sha256=HA8QnkI9CQttcAlXrRPvrZrgKroJb_W_S6dmR0XM9pk,47182
20
- pyadps/utils/__pycache__/profile_test.cpython-312.pyc,sha256=FGaPZj5POdrBmUwbLs9tKFXJQL29WjZsX1l7mumUwrk,20852
21
- pyadps/utils/__pycache__/pyreadrdi.cpython-312.pyc,sha256=6_jgCt-3N4gQVLKLZZCLqOKsQJ3mQXQrq_w2jtU7ARw,37624
22
- pyadps/utils/__pycache__/readrdi.cpython-312.pyc,sha256=-3SpMj71glafcy0XlS_itLYFKCQAXLnrmliBwVDhEqM,53190
23
- pyadps/utils/__pycache__/regrid.cpython-312.pyc,sha256=STOYAAGBfLnP91Pvqlcvtd8ilwyOoRDoGxHs56hiSYo,9804
24
- pyadps/utils/__pycache__/script.cpython-312.pyc,sha256=ubdOI-kEG_iBBB0tBvU-r4CZWj9Wn42PewdGKsNlu2M,8230
25
- pyadps/utils/__pycache__/sensor_health.cpython-312.pyc,sha256=8iYp15CEZNFujAIftWylksg9WbdPe0ozsk99jJFQqco,5037
26
- pyadps/utils/__pycache__/signal_quality.cpython-312.pyc,sha256=PeUZEesieBLxrc8z8aKoX7N7zjUJfpTqcvsTp_V0FG0,18256
27
- pyadps/utils/__pycache__/velocity_test.cpython-312.pyc,sha256=6tUY161EOSGwwSkfMEnWwF8jzrCIl5bm9D-PEcCogyY,7071
28
- pyadps/utils/__pycache__/writenc.cpython-312.pyc,sha256=0c1p-PLaJjYJrTXrgJ-VRCyZtqVlPyYyfeefIAr0t-8,11738
29
- pyadps/utils/autoprocess.py,sha256=8KAg5-7uC7dsMHrCPfvM5icPzle3MU1gpFNcC-eZrkM,20086
30
- pyadps/utils/metadata/config.ini,sha256=TC7htzGwUukIXt_u3JR5ycyvOoDj_JxWgGY6khjNeck,2154
31
- pyadps/utils/metadata/demo.000,sha256=qxB3sgjABrpv4DNXkwjpbSxk5sc4UwAI8kgQX0--PM8,234468
32
- pyadps/utils/metadata/flmeta.json,sha256=diIB9nht_0uw9YJNSFGdZYGzeVbR-07zIZS9Nf4VPSE,14245
33
- pyadps/utils/metadata/vlmeta.json,sha256=_dkQlGkkUvpAIM7S6kEUenSaiCpOrwXg8n1aU3dDF3s,22535
34
- pyadps/utils/plotgen.py,sha256=-A5fN2WoCZevt_SLT5OKSeYCzfv3rGG4tw7p1qzFjeA,26344
35
- pyadps/utils/profile_test.py,sha256=kcqdFigL2wQwMRrKyfNzfGIYcFwRj1_945lEpIio6pQ,20173
36
- pyadps/utils/pyreadrdi.py,sha256=2xBg9v7wvxywfvJK1E0hrjR9XSqiiNwpA9ELfcSsuhM,35303
37
- pyadps/utils/readrdi.py,sha256=ullqqWL-tvK3V9fjX8kpPwRpWhmRZy-CyA240gmcdr4,50012
38
- pyadps/utils/script.py,sha256=TKMCYe0HEz-2GFpNxKVzpg0p4MM-Cu2rcMZc51GgLn4,6534
39
- pyadps/utils/sensor_health.py,sha256=aHRaU4kMJZ9dGmYypKpCCgq-owWoNjvcl1I_9I7dG68,3973
40
- pyadps/utils/signal_quality.py,sha256=dohaMtJT_MCeyxF__zMRy36_rMmVZqU5vCdW1AYH35s,16239
41
- pyadps/utils/velocity_test.py,sha256=O8dgjv_5pxhJq6QuWHxysMjNzxSnob_2KPLInmO1kHI,6112
42
- pyadps/utils/writenc.py,sha256=fgE0qpxCy_uk5hsYCeN5l77jWgj-vLxpjx-4hEJDJU0,13955
43
- pyadps-0.1.1.dist-info/LICENSE,sha256=sfY_7DzQF5FxnO2T6ek74dfm5uBmwEp1oEg_WlzNsb8,1092
44
- pyadps-0.1.1.dist-info/METADATA,sha256=bCxR_5Za17VwJ69R7Ja7h9UwVAidcFwI_3veHtBn9Qs,4518
45
- pyadps-0.1.1.dist-info/WHEEL,sha256=RaoafKOydTQ7I_I3JTrPCg6kUmTgtm4BornzOqyEfJ8,88
46
- pyadps-0.1.1.dist-info/entry_points.txt,sha256=-oZhbbJq8Q29uNVh5SmzOLp9OeFM9VUzHVxovfI4LXA,126
47
- pyadps-0.1.1.dist-info/RECORD,,
File without changes