ioos / gsoc

Information about IOOS activities for Google Summer of Code
BSD 3-Clause "New" or "Revised" License
22 stars 10 forks source link

Searvey Improvement #59

Open SorooshMani-NOAA opened 7 months ago

SorooshMani-NOAA commented 7 months ago

Project Description

Searvey is a package designed for on-demand data retrieval from various sources, currently including: - U.S. Center for Operational Oceanographic Products and Services (CO-OPS). - Flanders Marine Institute (VLIZ). - Intergovernmental Oceanographic Commission (IOC). - U.S. Geological Survey (USGS). This project aims to enhance the capabilities of Searvey by incorporating additional observational resources and expanding the range of oceanic variables covered. The objective is to improve our capacity for evaluating numerical models by expanding the available observational data.

Expected Outcomes

1- Extended on-demand data retrieval for water levels from additional sources such as the Canadian Hydrographic Service (CHS) and the Australian Bureau of Meteorology (BOM). 2- Extended on-demand data retrieval to include more variables such as currents, water temperature, and salinity.

Skills required

Python; Libraries: Xarray

Mentor(s)

Soroosh Mani (@SorooshMani-NOAA), Atieh Alipour (@AtiehAlipour-NOAA )

Expected Project Size

175

What is the difficulty of the project?

Intermediate

FloraSauerbronn commented 7 months ago

Hello, my name is Flora, and I'm Master’s degree student in physical oceanography in Brazil. I was interested in your proposal because I already worked with numerical models during my graduation, and have some questions about it. How will the project handle data retrieval for additional variables such as currents, water temperature, and salinity? Are there specific APIs or protocols that need to be followed? What are Searvey's weaknesses that you would like to focus on improving?

SorooshMani-NOAA commented 7 months ago

Hi Flora, thank you for expressing your interest in this project.

Searvey is developed with the aim for it to be a light package which serves as a one-stop shop for ocean data retrieval from various sources for the purpose of ocean model validation. The idea is to return the data as close to original data source as possible. We leverage existing APIs provided by data sources (e.g. for COOPS and IOC) or light packages built on top of those APIs (e.g. dataretrieval). So we're not developing web APIs, we're developing a Python API (simple to use functions from a ocean modeler perspective) to use existing data source APIs.

The initial focus was on water level data, but we'd like to expand that to include any available variables (such as like currents, water temperature, and salinity) for searvey to become a more comprehensive tool for model evaluations and analyses.

There is an ongoing effort to also unify the retrieval API between different sources supported by searvey which is relevant to any future development/additions: https://github.com/oceanmodeling/searvey/pull/125. This specific PR, for example, also adds the ability to query different variables from COOPS API.

I'd say there are two main goals with this project:

Please feel free to reach out if you have any further questions.

abdu558 commented 7 months ago

Hello, my name is Abdu, I am a computer science student in the UK. I am interested in this because of its impact and importance to the environment. I have a question about the proposal, would it be okay to use more than just CHS and BOM but also others from around the globe?

SorooshMani-NOAA commented 7 months ago

@abdu558 sure, the more sources we can cover the more useful the tool becomes

abdu558 commented 7 months ago

Thank you Soroosh for the quick response. I have submitted a proposal, hope you like it.

Thanks, Abdu