OGC API EDR - Previsões do HYbrid Coordinate Ocean Model (HYCOM)
Versão beta.
1. Introdução
Esta página descreve o acesso aos dados de previsão da circulação oceânica produzidos pelo HYbrid Coordinate Ocean Model (HYCOM) e disponibilizados pelo Instituto Hidrográfico (IH) através de uma OGC API.
A implementação segue as normas do Open Geospatial Consortium (OGC), utilizando a OGC API - Environmental Data Retrieval (EDR) para consulta espacial e temporal dos parâmetros previstos pelo modelo.
A OGC API encontra-se disponível em:
https://ogcapi.hidrografico.pt
A descrição OpenAPI/Swagger pode ser consultada através da ligação disponibilizada na página inicial da OGC API.
2. Coleção hycom
2.1. Características gerais
As previsões do modelo HYCOM estão publicadas na coleção hycom:
https://ogcapi.hidrografico.pt/collections/hycom
A coleção disponibiliza a corrida diária mais recente do modelo. A fonte de dados é atualizada automaticamente quando uma nova corrida fica disponível, não sendo necessário alterar o endereço da coleção.
As previsões do modelo apresentam uma resolução espacial de aproximadamente 0,022º em longitude e 0,018º em latitude (equivalente a cerca de 2 km na região de Portugal continental) e uma resolução temporal de 3 horas, com uma janela temporal móvel de 7 dias.
As datas e horas são expressas em Tempo Universal Coordenado (UTC), segundo a norma ISO 8601.
A grelha horizontal utiliza o sistema de referência OGC CRS84 (WGS 84, longitude/latitude). A cobertura espacial atual é aproximadamente:
- Longitude: -15.0 a 0.004;
- Latitude: 33.0 a 45.498.
O serviço disponibiliza previsões produzidas por um modelo numérico. Os valores não correspondem a observações e devem ser interpretados tendo em consideração a incerteza e as limitações inerentes ao modelo.
2.2. Referência das previsões
A coleção identifica explicitamente a corrida do modelo utilizada para produzir as previsões através do objeto x-ih-forecast:
https://ogcapi.hidrografico.pt/collections/hycom?f=json
Este objeto inclui:
-
reference_time- instante de referência da corrida do modelo, em UTC (ISO 8601); -
source_dataset- ficheiro NetCDF correspondente à corrida atualmente utilizada; -
source_opendap_url- endereço do ficheiro no servidor Thematic Real-time Environmental Distributed Data Services (THREDDS) Data Server (TDS).
Exemplo:
"x-ih-forecast": {
"reference_time": "2026-10-12T00:00:00Z",
"source_dataset": "20261012_hycom.nc",
"source_opendap_url": "https://webgeo6.hidrografico.pt/thredds/dodsC/HYCOM/20261012_hycom.nc"
}
O reference_time identifica o instante de referência da corrida do modelo, não devendo ser confundido com a extensão temporal da coleção (extent.temporal.interval), que representa o período das previsões disponibilizadas. O início da extensão temporal coincide com o reference_time.
Os valores de x-ih-forecast são atualizados automaticamente quando uma nova corrida do HYCOM passa a constituir a fonte da coleção.
2.3. Consultas disponíveis
| Objetivo | Interface | Consulta | Resposta |
|---|---|---|---|
| Consultar os metadados da coleção | OGC API | /collections/hycom |
HTML / JSON |
| Consultar a previsão numa posição | OGC API - EDR | /position |
CoverageJSON |
| Consultar uma região da grelha | OGC API - EDR | /cube |
CoverageJSON |
2.4. Parâmetros disponíveis
| Parâmetro | Descrição | Unidade |
|---|---|---|
sst |
Temperatura da superfície do mar (sea surface temperature). |
kelvin (K) |
sss |
Salinidade da superfície do mar (sea surface salinity). |
|
u |
Componente zonal da velocidade da corrente, positiva para este. |
m/s |
v |
Componente meridional da velocidade da corrente, positiva para norte. |
m/s |
É possível solicitar um ou vários parâmetros na mesma consulta. Neste último caso, os identificadores são separados por vírgula:
parameter-name=sst,sss,u,v
3. Acesso aos dados
3.1. Metadados da coleção
Os metadados do conjunto de dados podem ser consultados no Catálogo de Metadados do IH.
A descrição da coleção na OGC API pode ser consultada em HTML ou JSON:
# HTML
https://ogcapi.hidrografico.pt/collections/hycom?f=html
# JSON
https://ogcapi.hidrografico.pt/collections/hycom?f=json
A resposta inclui, entre outros elementos:
- Título, descrição e palavras-chave;
- Extensão espacial e temporal e informação da corrida do modelo de referência;
- Ligações para metadados, licença, vocabulários e sistemas de referência;
- Parâmetros disponíveis;
- Tipos de consulta suportados.
3.2. Parâmetros comuns às consultas OGC API - EDR
| Argumento | Descrição / formato | Exemplo |
|---|---|---|
datetime |
Instante ou intervalo temporal em UTC (ISO 8601). | 2026-09-06T12:00:00Z |
parameter-name |
Parâmetro ou lista de parâmetros separados por vírgula. | sst,sss,u,v |
f |
Formato da resposta. | json |
O argumento datetime permite selecionar temporalmente os dados, podendo assumir as seguintes formas:
- Data:
datetime=YYYY-MM-DD; - Instante:
datetime=YYYY-MM-DDThh:mm:ssZ; - Intervalo:
datetime=início/fim.
Uma consulta por data devolve as previsões disponíveis nesse dia. Uma consulta por instante devolve a previsão correspondente ao instante solicitado, quando este existe na grelha temporal do modelo. A resolução temporal nominal é de 3 horas, pelo que os instantes disponíveis são 00:00, 03:00, 06:00, 09:00, 12:00, 15:00, 18:00 e 21:00 UTC.
3.3. Consultas espaçotemporais
3.3.1. Consulta numa posição
A consulta position permite obter a previsão (instante) ou a série temporal de previsões (intervalo temporal) na posição indicada:
https://ogcapi.hidrografico.pt/collections/hycom/position
| Argumento | Descrição | Exemplo |
|---|---|---|
coords |
Geometria WKT do tipo POINT (OGC CRS84). |
POINT(-10 38.7) |
datetime |
Instante ou intervalo temporal em UTC (ISO 8601). | 2026-09-06T12:00:00Z |
parameter-name |
Parâmetro ou lista de parâmetros separados por vírgula. | sst,sss,u,v |
Exemplo no browser:
https://ogcapi.hidrografico.pt/collections/hycom/position?coords=POINT%28-10%2038.7%29¶meter-name=sst&datetime=2026-09-06T12%3A00%3A00Z&f=json
Exemplo no terminal:
curl --get \
'https://ogcapi.hidrografico.pt/collections/hycom/position' \
--data-urlencode 'coords=POINT(-10 38.7)' \
--data-urlencode 'parameter-name=sst,sss,u,v' \
--data-urlencode 'datetime=2026-09-06T12:00:00Z' \
--data-urlencode 'f=json'
A consulta position não realiza interpolação espacial. É utilizado o ponto da grelha do modelo mais próximo das coordenadas solicitadas. Consequentemente, as coordenadas x e y devolvidas na resposta podem diferir ligeiramente das coordenadas fornecidas pelo utilizador.
3.3.2. Consulta numa área
A consulta cube permite obter a previsão (instante) ou a série temporal de previsões (intervalo temporal) na área retangular indicada:
https://ogcapi.hidrografico.pt/collections/hycom/cube
| Argumento | Descrição | Exemplo |
|---|---|---|
bbox |
Retângulo delimitador, com os limites ordenados por longitude mínima, latitude mínima, longitude máxima e latitude máxima (OGC CRS84). |
-10.2,38.6,-9.8,38.9 |
datetime |
Instante ou intervalo temporal em UTC (ISO 8601). | 2026-09-06T12:00:00Z |
parameter-name |
Parâmetro ou lista de parâmetros separados por vírgula. | sst,sss,u,v |
Exemplo no browser:
https://ogcapi.hidrografico.pt/collections/hycom/cube?bbox=-10.2,38.6,-9.8,38.9¶meter-name=sst&datetime=2026-09-06T12%3A00%3A00Z&f=json
Exemplo no terminal:
curl --get \
'https://ogcapi.hidrografico.pt/collections/hycom/cube' \
--data-urlencode 'bbox=-10.2,38.6,-9.8,38.9' \
--data-urlencode 'parameter-name=sst,sss,u,v' \
--data-urlencode 'datetime=2026-09-06T12:00:00Z' \
--data-urlencode 'f=json'
Os limites espaciais da resposta correspondem aos pontos da grelha do modelo abrangidos pela bbox solicitada. Assim, os valores start e stop das coordenadas x e y podem não coincidir exatamente com os limites fornecidos pelo utilizador.
3.4. Extensão temporal e atualização
Os dados disponibilizados correspondem sempre à corrida diária mais recente do modelo. Quando é publicada uma nova corrida do modelo, esta passa automaticamente a constituir a fonte da coleção hycom.
Consequentemente, a extensão temporal da coleção é móvel. As aplicações cliente não devem assumir datas absolutas fixas, devendo consultar os metadados e utilizar o argumento datetime para selecionar os períodos pretendidos.
Os dados são disponibilizados com uma resolução temporal nominal de 3 horas e uma janela de previsão de 7 dias.
4. Estrutura e semântica dos dados
4.1. Estrutura da resposta CoverageJSON
As consultas OGC API - EDR devolvem objetos CoverageJSON. A estrutura do domínio depende do tipo de consulta.
| Consulta | Tipo de domínio | Descrição |
|---|---|---|
position |
PointSeries |
Série temporal correspondente a um ponto da grelha. |
cube |
Grid |
Campo espacial e temporal correspondente a uma área da grelha. |
4.1.1. Resposta position
Numa consulta position, os principais elementos da resposta são:
| Elemento | Conteúdo |
|---|---|
domain.domainType |
PointSeries. |
domain.axes.x |
Longitude do ponto da grelha selecionado. |
domain.axes.y |
Latitude do ponto da grelha selecionado. |
domain.axes.t |
Instantes de previsão. |
parameters |
Descrição dos parâmetros e respetivas unidades. |
ranges |
Valores previstos para os parâmetros solicitados. |
Exemplo simplificado:
{
"type": "Coverage",
"domain": {
"domainType": "PointSeries",
"axes": {
"x": {
"values": [-10.006]
},
"y": {
"values": [38.7014]
},
"t": {
"values": [
"2026-09-06T12:00:00Z"
]
}
}
},
"parameters": {
"sst": {}
},
"ranges": {
"sst": {
"axisNames": ["t", "y", "x"],
"shape": [1, 1, 1],
"values": [293.5655]
}
}
}
4.1.2. Resposta cube
Numa consulta cube, a resposta representa uma grelha espacial. Os eixos x e y incluem normalmente os elementos start, stop e num, que definem a extensão e o número de pontos da grelha devolvida.
Os valores de cada parâmetro são organizados segundo os eixos:
["t", "y", "x"]
Por exemplo, uma resposta com:
"shape": [1, 17, 18]
corresponde a um instante temporal, 17 pontos segundo o eixo da latitude e 18 pontos segundo o eixo da longitude.
4.2. Parâmetros
| Parâmetro | Descrição | Unidade | Formato |
|---|---|---|---|
sst |
Temperatura da superfície do mar (NVS P07 CFSN0381) |
K (NVS P06 UPKA) |
Número decimal |
sss |
Salinidade da superfície do mar (NVS P07 CFSN0376) |
|
Número decimal |
u |
Componente zonal da velocidade da corrente (NVS P07 CFSN0650) |
m/s (NVS P06 UVAA) |
Número decimal |
v |
Componente meridional da velocidade da corrente (NVS P07 CFSN0494) |
m/s (NVS P06 UVAA) |
Número decimal |
4.3. Vocabulários e sistemas de referência
| Elemento | Referência |
|---|---|
| Sistema de referência horizontal - OGC CRS84 (WGS 84, longitude/latitude) | OGC CRS84 |
| Sistema temporal | Calendário Gregoriano; UTC (ISO 8601). |
| Estrutura dos ficheiros de origem | NetCDF segundo convenções CF/ACDD |
| Vocabulários |
5. Termos, condições e acesso
5.1. Licença e condições de utilização
Os dados são disponibilizados nos termos da licença CC BY 4.0, conforme indicado nos metadados, requerendo, entre outros:
- Identificar a fonte dos dados;
- Manter a referência aos metadados, DOI e à licença aplicável;
- Indicar alterações ou transformações realizadas sobre os dados, quando aplicável;
- Não atribuir aos dados uma precisão, validação ou nível de qualidade superior ao declarado.
As previsões são produzidas através de modelação numérica e podem apresentar diferenças relativamente às condições efetivamente observadas. O utilizador é responsável pela avaliação da adequação dos dados à finalidade pretendida.
5.2. Autenticação
Na configuração atual, o acesso aos endpoints descritos não requer autenticação nem API key.