Gardado en:
Detalles Bibliográficos
Autor Principal: Andrew Reed
Formato: Recurso digital
Idioma:
Publicado: Zenodo 2025
Subjects:
Acceso en liña:https://doi.org/10.5281/zenodo.17560648
Tags: Engadir etiqueta
Sen Etiquetas, Sexa o primeiro en etiquetar este rexistro!
Table of Contents:
  • <p># ⚓ Anchor Survey Tool</p> <p><br>[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.17560648.svg)](https://doi.org/10.5281/zenodo.17560648) <br><br>@author: Andrew Reed <br><br>@email: areed@whoi.edu</p> <p>Interactive Python tool for estimating seafloor anchor positions from ship survey data.</p> <p>---</p> <p>## Features<br>* **File Input**: Load station .dat files for survey analysis<br>* **Custom Inputs**: Enter ship transducer depth, drop lat/lon (DMS), and sound speed<br>* **Real-Time Visualization**: Interactive Matplotlib plot of triangulated anchor position<br>* **Robust Computation**: Iterative least-squares anchor location solver with RMS error reporting<br>* **Automated Testing**: Pytest suite with GitHub Actions integration<br>* **Fully Reproducible**: Conda + pip hybrid environment and Makefile automation</p> <p>## Installation<br>```bash<br>git clone git@github.com:WHOIGit/anchor_survey.git<br>cd anchor_survey<br>make env<br>```</p> <p>## Usage<br>#### Launch Gui<br>```<br>panel serve gui/survey_gui.py --show<br>```</p> <p>#### Run from Python<br>```<br>from survey.survey import calculate_anchor_position<br>```</p> <p>#### Example data</p> <p>An example ```stations.dat``` file and ```drop_points.dat``` file are provided in **```data```** folder.</p> <p>## Quick Start<br>1️⃣ **Clone the repository**<br>```bash<br>git clone git@github.com:WHOIGit/anchor_survey.git<br>cd anchor_survey<br>```</p> <p>---<br>2️⃣ **Create the environment**</p> <p>Use the included Makefile to create or update the Conda environment:<br>```bash<br>make env<br>```<br>Or, manually:<br>```bash<br>conda env create -f environment.yml<br>```</p> <p>This will:<br>* Create an environment named anchor_survey<br>* Install all required dependencies (numpy, pandas, matplotlib, panel)<br>* Install the package in editable mode (```-e .```)</p> <p>---<br>3️⃣ **Activate the environment**</p> <p>```bash<br>conda activate anchor_survey<br>```<br>Check libraries installed (optional):<br>```bash<br>make check-env<br>```</p> <p>---<br>4️⃣ **Launch the GUI**</p> <p>Run the interactive Panel-based interface:<br>```bash<br>make gui<br>```<br>This opens your default browser with the web app at: http://localhost:5006/survey_gui</p> <p>---<br>5️⃣ **Run tests**</p> <p>To confirm the code is working properly:<br>```bash<br>make test<br>```</p> <p><br>## Repository Organization<br>```<br>anchor_survey/<br>│<br>├── survey/       <br>│   ├── __init__.py<br>│   ├── survey.py                    <br>│   ├── utils.py                     <br>│<br>├── gui/<br>│   ├── __init__.py<br>│   ├── survey_gui.py                <br>│<br>├── data/<br>│   ├── example_stations.dat<br>│   ├── drop_points.dat         <br>│<br>├── tests/<br>│   ├── __init__.py<br>│   ├── test_survey.py               <br>│<br>├── notebooks/<br>│   ├── exploration.ipynb            <br>│              <br>├── environment.yml                  <br>├── .gitignore<br>├── README.md<br>├── LICENSE<br>├── Makefile                          <br>└── pyproject.toml                         <br>```</p> <p>## Citation & License</p>