Phân bổ

Các đoạn đường bay có dấu vết ngưng tụ được phân bổ cho một danh sách chuyến bay cụ thể.

Định dạng dữ liệu

Yêu cầu về vệt khói có thông tin ghi nhận quyền tác giả chứa dữ liệu có cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "attributions": [
    {
      object (Attribution)
    }
  ]
}
Trường
attributions[]

object (Attribution)

Một danh sách các thông tin ghi nhận quyền tác giả, mỗi thông tin cho một tên tài nguyên được chỉ định trong BatchGetAttributionsRequest.names. Thứ tự của các thông tin ghi nhận quyền tác giả trong danh sách này sẽ khớp với thứ tự của tên trong BatchGetAttributionsRequest. Nếu không tìm thấy chuyến bay, thông báo Phân bổ tương ứng trong phản hồi sẽ chỉ có trường name được điền sẵn, trong khi flightDetailscontrail sẽ trống.

Phân bổ

Biểu thị một sự kiện vệt phản lực tổng hợp cho một chuyến bay cụ thể, tóm tắt tất cả các đoạn vệt phản lực được phân bổ (ví dụ: tổng số km và năng lượng).

Biểu diễn dưới dạng JSON
{
  "name": string,
  "flightDetails": {
    object (FlightDetails)
  },
  "contrail": {
    object (ContrailAttributes)
  },
  "segments": [
    {
      object (SegmentAttribution)
    }
  ]
}
Trường
name

string

Giá trị nhận dạng. Tên tài nguyên của chuyến bay.

Định dạng:

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

Thành phần:

  • {carrier}: Mã hãng vận chuyển IATA gồm 2 ký tự (ví dụ: "AA", "UA").
  • {flightNumber}: Số hiệu chuyến bay gồm 1 đến 4 chữ số (ví dụ: "123").
  • {departure_date}: Ngày khởi hành của chuyến bay theo giờ địa phương của sân bay khởi hành ở định dạng YYYY-MM-DD.
  • {departure_airport}: Mã IATA gồm 3 chữ cái của sân bay (ví dụ: "JFK", "LHR").
flightDetails

object (FlightDetails)

Thông tin chi tiết về chuyến bay này.

contrail

object (ContrailAttributes)

Các thuộc tính tổng hợp của vệt ngưng tụ cho toàn bộ chuyến bay. Giá trị này tổng hợp các thuộc tính của vệt khói từ tất cả các đoạn được phân bổ.

Giải thích trạng thái (trong một chuyến bay được tìm thấy):

  • Nếu có: Đã thực hiện phân tích vệt khói. Các trường bên trong ContrailAttributes cho biết kết quả (ví dụ: lengthMeters > 0 có nghĩa là vệt khói trắng được phân bổ). Nếu có thông báo ContrailAttributes trống, tức là quá trình phân tích đã được thực hiện nhưng cả lengthMeters và việc ép buộc năng lượng đều được đánh giá là bằng 0.
  • Nếu không có: KHÔNG thể phân tích vệt khói cho chuyến bay này.
    • Điều này thường là do thiếu dữ liệu đầu vào (ví dụ: thiếu dữ liệu thời tiết hoặc đường bay không chắc chắn).
    • Điều này KHÔNG có nghĩa là không có vệt khói được tạo ra, mà chỉ là không thể xác định được.

segments[]

object (SegmentAttribution)

Phân bổ đường bay theo từng đoạn. Mỗi mục đại diện cho một khoảng thời gian riêng biệt của chuyến bay mà(các) vệt ngưng tụ được gán.

FlightDetails

Xác định toàn bộ thông tin chuyến bay được trả về trong phản hồi.

Biểu diễn dưới dạng JSON
{
  "carrier": string,
  "flightNumber": integer,
  "departureTime": string,
  "icao24": string,
  "originAirport": string,
  "destinationAirport": string,
  "callSign": string,
  "analyzedFlightDistanceMeters": integer
}
Trường
carrier

string

Mã IATA của hãng hàng không (ví dụ: "AA").

flightNumber

integer

Số hiệu chuyến bay (ví dụ: "123").

departureTime

string

Ngày khởi hành theo múi giờ của sân bay khởi hành ở định dạng YYYYMMDD.

icao24

string

Địa chỉ 24 bit của máy bay theo ICAO

originAirport

string

Mã IATA của sân bay khởi hành.

destinationAirport

string

Mã IATA của sân bay đến.

callSign

string

Mã nhận dạng của máy bay. Trường này ưu tiên chứa mã nhận dạng được dùng trong thông tin liên lạc của Dịch vụ kiểm soát không lưu (ATC). Nếu không có mã nhận dạng cuộc gọi cụ thể của ATC hoặc mã này giống với mã nhận dạng chuyến bay tiêu chuẩn, thì trường này sẽ chứa mã nhận dạng chuyến bay tiêu chuẩn (thường là sự kết hợp giữa mã hãng hàng không và số hiệu chuyến bay đối với các chuyến bay thương mại).

analyzedFlightDistanceMeters

integer

Khoảng cách của chuyến bay được phân tích, tính bằng mét.

ContrailAttributes

Biểu thị các thuộc tính của vệt khói cho một chuyến bay hoặc phân đoạn chuyến bay.

Biểu diễn dưới dạng JSON
{
  "lengthMeters": integer,
  "effectiveEnergyForcingJoules": string
}
Trường
lengthMeters

integer

Chiều dài (tính bằng mét) của (các) tập hợp con trong đường bay mà vết phản lực được gán. Khoảng cách này được tính bằng khoảng cách đường tròn lớn giữa các điểm tham chiếu của chuyến bay.

effectiveEnergyForcingJoules

string (int64 format)

Tổng năng lượng bức xạ hiệu quả của vết phản lực, tính bằng joule. Thông tin này được tính toán bằng cách trích xuất lực bức xạ hiệu quả từ đầu ra dự báo CoCiP dạng lưới 4D và nội suy tuyến tính các đầu ra đó. Phương pháp này có thể thay đổi.

SegmentAttribution

Biểu thị mức đóng góp của vệt khói trắng cho một đoạn thời gian cụ thể của một chuyến bay.

Biểu diễn dưới dạng JSON
{
  "startTime": string,
  "endTime": string,
  "contrail": {
    object (ContrailAttributes)
  },
  "detectionEvidences": [
    {
      object (ContrailDetectionEvidence)
    }
  ],
  "attributionMethod": enum (AttributionMethod),
  "longGapInterpolation": boolean,
  "waypointAttributions": [
    {
      object (WaypointAttribution)
    }
  ]
}
Trường
startTime

string (Timestamp format)

Thời gian bắt đầu của chặng bay mà vệt khói được gán. Dấu thời gian này tính bằng giây kể từ thời điểm bắt đầu của hệ thống theo giờ UTC.

endTime

string (Timestamp format)

Thời gian kết thúc của chặng bay mà vệt khói được phân bổ. Dấu thời gian này tính bằng giây kể từ thời điểm bắt đầu của hệ thống theo giờ UTC.

contrail

object (ContrailAttributes)

Các thuộc tính của đường bay cho đoạn đường cụ thể này.

detectionEvidences[]

object (ContrailDetectionEvidence)

Các lần phát hiện vệt khói riêng lẻ của vệ tinh cung cấp bằng chứng cho việc phân bổ cho đoạn bay này.

attributionMethod

enum (AttributionMethod)

Chỉ có đầu ra. Phương pháp được dùng để phân bổ vệt khói cho đoạn đường này (ví dụ: mô hình CoCiP hoặc quan sát trực tiếp).

longGapInterpolation

boolean

Chỉ có đầu ra. True nếu đường bay của đoạn được tạo bằng cách nội suy trong khoảng trống dữ liệu ADS-B dài (>5 phút).

waypointAttributions[]

object (WaypointAttribution)

Chỉ có đầu ra. Các thuộc tính của vệt ngưng tụ theo từng điểm tham chiếu được liên kết trên đoạn đường này.

ContrailDetectionEvidence

Thông tin chi tiết về một lần quan sát vết phản lực bằng vệ tinh.

Biểu diễn dưới dạng JSON
{
  "observationTime": string,
  "observedLengthMeters": integer,
  "dataSource": enum (DataSource)
}
Trường
observationTime

string (Timestamp format)

Thời điểm chụp ảnh vệ tinh phát hiện thấy vệt khói. Đây thường là thời gian bắt đầu quét. Dấu thời gian này tính bằng giây kể từ thời điểm bắt đầu của hệ thống theo giờ UTC.

observedLengthMeters

integer

Chiều dài quan sát được từ đầu đến cuối của đặc điểm vệt khói dạng đường thẳng tính bằng mét, được phát hiện trong hình ảnh vệ tinh do observationTime chỉ định. Độ dài này có thể khác với lengthMeters trong SegmentAttribution.contrail vì:

  • Vệt khói có thể đã thay đổi (ví dụ: lan rộng, dài hơn, v.v.) trong khí quyển giữa thời điểm hình thành và thời điểm quan sát.
  • Thuật toán phân bổ chỉ có thể phân bổ một phần vệt khói trắng này cho chuyến bay này một cách chắc chắn.
dataSource

enum (DataSource)

Chỉ có đầu ra. Nguồn dữ liệu vệ tinh được dùng để phát hiện.

DataSource

Nguồn dữ liệu vệ tinh được dùng để phát hiện vết phản lực. Các giá trị khác có thể được thêm vào trong tương lai.

Trong số các kết quả đầu ra dữ liệu vệ tinh hiện có, các thuộc tính dựa trên GOES East và Himawari có chất lượng ở cấp độ sản xuất, trong khi các thuộc tính dựa trên MTG vẫn đang ở giai đoạn Beta và đang được cải thiện chất lượng.

Enum
DATA_SOURCE_UNSPECIFIED Nguồn dữ liệu không xác định.
GOES_EAST_FULL_DISK Dữ liệu từ các lần quét toàn bộ đĩa của GOES-East.
GOES_WEST_FULL_DISK Dữ liệu từ các lần quét toàn bộ đĩa của GOES-West.
MTG_000_FULL_DISK Dữ liệu từ các bản quét toàn bộ đĩa MTG-000.
HIMAWARI_FULL_DISK Dữ liệu từ các lần quét toàn bộ đĩa của Himawari.

Hình ảnh vệ tinh của Contrails API dựa trên:

WaypointAttribution

Biểu thị các thuộc tính của vệt khói cho một điểm tham chiếu cụ thể trong một đoạn bay.

Biểu diễn dưới dạng JSON
{
  "time": string,
  "contrailAttributes": {
    object (ContrailAttributes)
  }
}
Trường
time

string (Timestamp format)

Thời gian tại điểm tham chiếu tính bằng giây kể từ thời gian bắt đầu của hệ thống theo giờ UTC.

contrailAttributes

object (ContrailAttributes)

Các thuộc tính của vệt khói được liên kết tại điểm tham chiếu cụ thể này.

AttributionMethod

Xác định quy trình hoặc phương pháp cụ thể được dùng để thực hiện hoạt động phân bổ.

Enum
ATTRIBUTION_METHOD_OBSERVATION Thông tin phân bổ được lấy hoàn toàn bằng cách so khớp với thông tin phát hiện vệt khói do vệ tinh tạo ra.
ATTRIBUTION_METHOD_COCIP Việc phân bổ hoàn toàn dựa trên mô hình CoCiP dựa trên vật lý.
ATTRIBUTION_METHOD_OBSERVATION_ENHANCED_COCIP

Mô hình phân bổ kết hợp giữa dự đoán theo mô hình CoCiP được điều chỉnh bằng thông tin phát hiện từ vệ tinh.

  • Có dấu vết: Nếu có detectionEvidences, thì dấu vết này đã được dự đoán và xác nhận bằng quan sát, nhận được trọng số làm ấm cao hơn.
  • Không phát hiện được: Nếu thiếu detectionEvidences, thì vệt khói được dự đoán nhưng không quan sát được, nên mức độ nóng lên được tính toán sẽ giảm.
ATTRIBUTION_METHOD_UNSPECIFIED Phương thức chưa được chỉ định.

Ghi chú

Mỗi DataSource sử dụng các ranh giới khác nhau để xử lý các khung hiển thị dựa trên quan sát:

Khung giới hạn phạm vi phủ sóng của vệ tinh (chế độ xem phẳng theo phép chiếu Mercator)

Giấy phép

Dữ liệu do ContrailWatch Attributions API cung cấp được cấp phép theo CC BY-NC 4.0.