Atrybucje

Przypisane segmenty śladów kondensacyjnych dla określonej listy lotów.

Format danych

Żądania dotyczące śladów kondensacyjnych z atrybucją zawierają dane o następującej strukturze:

Zapis JSON
{
  "attributions": [
    {
      object (Attribution)
    }
  ]
}
Pola
attributions[]

object (Attribution)

Lista atrybucji, po jednej dla każdej nazwy zasobu określonej w parametrze BatchGetAttributionsRequest.names. Kolejność atrybucji na tej liście będzie zgodna z kolejnością nazw w BatchGetAttributionsRequest. Jeśli nie znaleziono lotu, odpowiedni komunikat o atrybucji w odpowiedzi będzie zawierać tylko wypełnione pole name, a pola flightDetailscontrail będą puste.

Atrybucja

Reprezentuje zagregowane zdarzenie smugi kondensacyjnej dla konkretnego lotu, które podsumowuje wszystkie przypisane segmenty smugi kondensacyjnej (np. łączną liczbę kilometrów i energię).

Zapis JSON
{
  "name": string,
  "flightDetails": {
    object (FlightDetails)
  },
  "contrail": {
    object (ContrailAttributes)
  },
  "segments": [
    {
      object (SegmentAttribution)
    }
  ]
}
Pola
name

string

Identyfikator. Nazwa zasobu lotu.

Format:

carriers/{carrier}/flightNumbers/{flightNumber}/departureDates/{departure_date}/departureAirports/{departure_airport}

Komponenty:

  • {carrier}: 2-znakowy kod IATA przewoźnika (np. "AA", "UA").
  • {flightNumber}: 1–4-cyfrowy numer lotu (np. "123").
  • {departure_date}: data wylotu w czasie lokalnym lotniska wylotu w formacie YYYY-MM-DD.
  • {departure_airport}: 3-literowy kod IATA lotniska (np. "JFK", "LHR").
flightDetails

object (FlightDetails)

Szczegółowe informacje o tym locie.

contrail

object (ContrailAttributes)

Zagregowane atrybuty smug kondensacyjnych dla całego lotu. Jest to suma atrybutów śladów kondensacyjnych ze wszystkich przypisanych segmentów.

Interpretacja stanu (w ramach znalezionego lotu):

  • Jeśli występuje: przeprowadzono analizę śladów kondensacyjnych. Pola w ContrailAttributes wskazują wyniki (np. lengthMeters > 0 oznacza, że smugi kondensacyjne zostały przypisane). Jeśli występuje pusty komunikat ContrailAttributes, oznacza to, że analiza została przeprowadzona, ale zarówno lengthMeters, jak i wymuszenie energii dały wartość zero.
  • Jeśli nie ma: nie można było przeprowadzić analizy śladów kondensacyjnych dla tego lotu.
    • Zwykle wynika to z niewystarczających danych wejściowych (np. brak danych o pogodzie lub niepewność ścieżki lotu).
    • NIE oznacza to, że nie powstały smugi kondensacyjne, tylko że nie można było tego stwierdzić.

segments[]

object (SegmentAttribution)

Atrybucje śladów kondensacyjnych w poszczególnych segmentach. Każdy wpis reprezentuje odrębny przedział czasu lotu, do którego przypisano smugi kondensacyjne.

FlightDetails

Określa pełny zestaw informacji o locie zwracanych w odpowiedzi.

Zapis JSON
{
  "carrier": string,
  "flightNumber": integer,
  "departureTime": string,
  "icao24": string,
  "originAirport": string,
  "destinationAirport": string,
  "callSign": string,
  "analyzedFlightDistanceMeters": integer
}
Pola
carrier

string

Kod IATA przewoźnika obsługującego lot (np. „AA”).

flightNumber

integer

Numer lotu (np. „123”).

departureTime

string

Data wylotu w strefie czasowej lotniska wylotu w formacie RRRRMMDD.

icao24

string

24-bitowy adres samolotu ICAO

originAirport

string

Kod IATA lotniska wylotu.

destinationAirport

string

Kod IATA lotniska docelowego.

callSign

string

Znak wywoławczy samolotu. To pole zawiera preferencyjnie znak wywoławczy używany w komunikacji z kontrolą ruchu lotniczego (ATC). Jeśli konkretny znak wywoławczy ATC jest niedostępny lub jest taki sam jak standardowy oznaczenie lotu, to pole zawiera standardowe oznaczenie lotu (zwykle kombinację kodu linii lotniczych i numeru lotu w przypadku lotów komercyjnych).

analyzedFlightDistanceMeters

integer

Długość analizowanego lotu w metrach.

ContrailAttributes

Zawiera atrybuty śladu kondensacyjnego dla lotu lub jego odcinka.

Zapis JSON
{
  "lengthMeters": integer,
  "effectiveEnergyForcingJoules": string
}
Pola
lengthMeters

integer

Długość w metrach podzbiorów ścieżki lotu, do których przypisano smugi kondensacyjne. Jest to obliczane jako odległość po okręgu wielkim między punktami trasy lotu.

effectiveEnergyForcingJoules

string (int64 format)

Całkowite efektywne wymuszanie radiacyjne smug kondensacyjnych w dżulach. Wartość ta jest obliczana przez wyodrębnienie efektywnego wymuszania radiacyjnego z czterowymiarowych danych prognozy CoCiP w postaci siatki i przeprowadzenie interpolacji liniowej. Ta metodologia może ulec zmianie.

SegmentAttribution

Reprezentuje atrybucję śladów kondensacyjnych dla określonego segmentu czasowego lotu.

Zapis JSON
{
  "startTime": string,
  "endTime": string,
  "contrail": {
    object (ContrailAttributes)
  },
  "detectionEvidences": [
    {
      object (ContrailDetectionEvidence)
    }
  ],
  "attributionMethod": enum (AttributionMethod),
  "longGapInterpolation": boolean,
  "waypointAttributions": [
    {
      object (WaypointAttribution)
    }
  ]
}
Pola
startTime

string (Timestamp format)

Czas rozpoczęcia segmentu lotu, do którego przypisane są smugi kondensacyjne. Ta sygnatura czasowa jest podana w sekundach epoki UTC.

endTime

string (Timestamp format)

Czas zakończenia segmentu lotu, do którego przypisane są smugi kondensacyjne. Ta sygnatura czasowa jest podana w sekundach epoki UTC.

contrail

object (ContrailAttributes)

Atrybuty Contrail dla tego konkretnego segmentu.

detectionEvidences[]

object (ContrailDetectionEvidence)

Wykrycia śladów kondensacyjnych z satelitów, które stanowią dowód na przypisanie ich do tego segmentu lotu.

attributionMethod

enum (AttributionMethod)

Tylko dane wyjściowe. Metoda użyta do przypisania śladów kondensacyjnych do tego segmentu (np. model CoCiP lub bezpośrednia obserwacja).

longGapInterpolation

boolean

Tylko dane wyjściowe. Wartość „prawda”, jeśli ścieżka lotu segmentu została wygenerowana przez interpolację długiej przerwy w danych ADS-B (powyżej 5 minut).

waypointAttributions[]

object (WaypointAttribution)

Tylko dane wyjściowe. Atrybuty śladów kondensacyjnych na poszczególnych punktach trasy zmapowane w tym segmencie.

ContrailDetectionEvidence

Szczegóły pojedynczej obserwacji smugi kondensacyjnej przez satelitę.

Zapis JSON
{
  "observationTime": string,
  "observedLengthMeters": integer,
  "dataSource": enum (DataSource)
}
Pola
observationTime

string (Timestamp format)

Czas, w którym zostało zrobione zdjęcie satelitarne, na którym wykryto ślad kondensacyjny. Jest to zwykle czas rozpoczęcia skanowania. Ta sygnatura czasowa jest podana w sekundach epoki UTC.

observedLengthMeters

integer

Obserwowana długość liniowej smugi kondensacyjnej w metrach, wykryta na zdjęciu satelitarnym określonym przez observationTime. Długość ta może się różnić od wartości lengthMetersSegmentAttribution.contrail, ponieważ:

  • Ślad kondensacyjny mógł się zmienić (np. rozprzestrzenić, wydłużyć itp.) w atmosferze między jego powstaniem a obserwacją.
  • Algorytm atrybucji był w stanie przypisać do tego lotu tylko część tej smugi kondensacyjnej.
dataSource

enum (DataSource)

Tylko dane wyjściowe. Źródło danych satelitarnych użytych do wykrycia.

DataSource

Źródło danych satelitarnych używanych do wykrywania smug kondensacyjnych. W przyszłości możemy dodać kolejne wartości.

Spośród dostępnych danych satelitarnych atrybucje oparte na GOES East i Himawari mają jakość na poziomie produkcyjnym, a atrybucje oparte na MTG są nadal w fazie beta i aktywnie ulepszane pod względem jakości.

Wartości w polu enum
DATA_SOURCE_UNSPECIFIED Nieokreślone źródło danych.
GOES_EAST_FULL_DISK Dane z pełnych skanów dysku GOES-East.
GOES_WEST_FULL_DISK Dane z pełnych skanów dysku satelity GOES-West.
MTG_000_FULL_DISK Dane z pełnych skanów dysku MTG-000.
HIMAWARI_FULL_DISK Dane ze skanów całego dysku Himawari.

Zdjęcia satelitarne z interfejsu Contrails API są oparte na:

WaypointAttribution

Reprezentuje atrybuty śladu kondensacyjnego dla konkretnego punktu trasy w etapie lotu.

Zapis JSON
{
  "time": string,
  "contrailAttributes": {
    object (ContrailAttributes)
  }
}
Pola
time

string (Timestamp format)

Czas w punkcie trasy w sekundach od początku epoki UTC.

contrailAttributes

object (ContrailAttributes)

Atrybuty śladu kondensacyjnego zmapowane w tym konkretnym punkcie trasy.

AttributionMethod

Określa konkretną procedurę lub metodologię używaną do atrybucji.

Wartości w polu enum
ATTRIBUTION_METHOD_OBSERVATION Atrybucja pochodzi wyłącznie z dopasowania do wykrytych śladów kondensacyjnych za satelitą.
ATTRIBUTION_METHOD_COCIP Atrybucje oparte wyłącznie na modelowaniu CoCiP opartym na fizyce.
ATTRIBUTION_METHOD_OBSERVATION_ENHANCED_COCIP

Atrybucja hybrydowa łącząca prognozy modelu CoCiP skorygowane na podstawie wykrywania satelitarnego.

  • Wykryte: jeśli występuje symbol detectionEvidences, oznacza to, że ślad kondensacyjny został przewidziany i potwierdzony przez obserwację, a jego wpływ na ocieplenie został zwiększony.
  • Bez wykrycia: jeśli brakuje wartości detectionEvidences, ślad kondensacyjny został przewidziany, ale nie zaobserwowano go, więc obliczone ocieplenie jest pomniejszone.
ATTRIBUTION_METHOD_UNSPECIFIED Nieokreślona metoda.

Uwagi

Każda DataSource używa różnych zakresów do przetwarzania widoków opartych na obserwacjach:

Ramki ograniczające pokrycie satelitarne (widok w projekcji Mercatora)

Licencja

Dane udostępniane przez interfejs ContrailWatch Attributions API są objęte licencją CC BY-NC 4.0.