bluerobotics / bluerobotics/ping-python

Add speed of sound estimation from water properties

Aperta
#125 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement good first issue
Lingua principale
Python
Stelle
60
Fork
39
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Would help with #122, and would also better enable data processing capabilities.

Should probably be implemented as a `water.py` module, with a helper for estimating salinity as per [here](https://bluerobotics.com/learn/speed-of-sound-in-water-calculator/#salinity-estimation). Ideally there would be some kind of API access to NASA's global sea surface salinity data (queried by GPS location?) or something, but that is probably best left as a note/TODO for now.

Example `v_sound` code at bluerobotics/ping-viewer/issues/1003

Would be useful to include an `estimate_v_sound(self, depth=None, temperature=None, salinity=None)` method in `PingDevice` that uses `water.estimate_sound_speed(depth, temperature, salinity)`, which can be updated over time to use the most up to date implemented method. `PingDevice` can have its initialisation updated to include initial `depth=0, temperature=25, salinity=water.estimate_salinity_from_type("seawater")` values.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia esaminando l’implementazione esistente di PingDevice e il modulo water.py proposto, quindi confronta il codice di esempio v_sound in bluerobotics/ping-viewer/issues/1003 con le indicazioni collegate per la stima della salinità. Il lavoro è completo quando fornisce la stima della velocità del suono e della salinità, espone PingDevice.estimate_v_sound(depth, temperature, salinity) e inizializza i valori predefiniti indicati; l’accesso ai dati NASA deve rimanere un TODO.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
backend, data
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.