docs: bilingual module docs for the network layer

This commit is contained in:
ApsisRS contributors 2026-10-02 01:49:08 +08:00
parent fe77c981bf
commit d94709eb5f
28 changed files with 56 additions and 0 deletions

View File

@ -1,6 +1,8 @@
//! Searching access windows for many tracks, optionally across several
//! threads.
//!
//! 为许多轨迹搜索可见性窗口,可选跨多个线程。
//!
//! A ground station sees a whole constellation, so the access schedule is
//! the search of one track per satellite. Each track is independent of the
//! others, which makes the search the natural place to use several cores: the

View File

@ -1,4 +1,6 @@
//! Errors reported while finding access windows.
//!
//! 查找可见性窗口时报告的错误。
use core::fmt;

View File

@ -1,4 +1,6 @@
//! The access window finder.
//!
//! 可见性窗口查找器。
use crate::error::{AccessError, AccessErrorKind};
use crate::pass::{Pass, PassSummary};

View File

@ -1,5 +1,7 @@
//! Ground station access windows.
//!
//! 地面站可见性窗口。
//!
//! A satellite is accessible from a ground station during the intervals when
//! it rises above the station's elevation mask. Each such interval is a
//! pass, or access window, and the sequence of windows over a period is the

View File

@ -1,4 +1,6 @@
//! The access window type and its summary.
//!
//! 可见性窗口类型及其汇总。
use apsis_math::Vec3;

View File

@ -1,4 +1,6 @@
//! Footprint geometry and coverage fractions.
//!
//! 覆盖区几何与覆盖比例。
use crate::geometry::{earth_central_angle, elevation_from_central_angle};
use apsis_math::Vec3;

View File

@ -1,6 +1,8 @@
//! The spherical geometry of a satellite, a ground point, and the Earth's
//! centre.
//!
//! 卫星、地面点与地心的球面几何。
//!
//! The three points form a triangle. The angles of that triangle are the
//! elevation at the ground point, the nadir angle at the satellite, and the
//! central angle at the centre of the Earth. Because the ground point is

View File

@ -1,5 +1,7 @@
//! Ground coverage analysis.
//!
//! 地面覆盖分析。
//!
//! A satellite covers the part of the Earth's surface from which it can be
//! seen above a minimum elevation angle. That part is a circle, called the
//! footprint, whose size depends on the satellite altitude and on the

View File

@ -1,4 +1,6 @@
//! Line of sight and visibility from a ground point.
//!
//! 自地面点的视线与可见性。
use crate::geometry::earth_central_angle;
use apsis_geodesy::{Ellipsoid, Geodetic, WGS84};

View File

@ -1,4 +1,6 @@
//! The handover decision and the rules that produce it.
//!
//! 切换决策以及产生它的各条规则。
use crate::error::{HandoverError, HandoverErrorKind};
use crate::policy::HandoverPolicy;

View File

@ -1,4 +1,6 @@
//! Errors reported while making a handover decision.
//!
//! 作出切换决策时报告的错误。
use core::fmt;

View File

@ -1,5 +1,7 @@
//! Handover decision logic for mobile terminals.
//!
//! 移动终端的切换决策逻辑。
//!
//! A terminal that can be served by more than one satellite must choose one,
//! and it must change its choice when the current server becomes unsuitable.
//! This crate makes that decision. It does not compute access windows, which

View File

@ -1,4 +1,6 @@
//! The handover policy, its record of past decisions, and the tracker.
//!
//! 切换策略、其过往决策记录,以及跟踪器。
use crate::decision::Candidate;
use crate::error::{HandoverError, HandoverErrorKind};

View File

@ -1,5 +1,7 @@
//! Deciding many links at once, optionally across several threads.
//!
//! 一次判定许多链路,可选跨多个线程。
//!
//! Building a constellation's topology asks the same question for every pair
//! of satellites, which is a quadratic number of independent geometry tests.
//! Each one is small, but there are so many that the loop is the dominant

View File

@ -1,4 +1,6 @@
//! Link geometry and the Earth blocking test.
//!
//! 链路几何与地球遮挡判据。
use crate::link::LinkGeometry;
use apsis_math::Vec3;

View File

@ -1,5 +1,7 @@
//! Inter-satellite link geometry and visibility.
//!
//! 星间链路几何与可见性。
//!
//! Two satellites can form a link when the straight line between them does
//! not pass through the Earth. This crate decides that condition, gives the
//! geometry a link budget needs, and reports the range and the angles at

View File

@ -1,4 +1,6 @@
//! The link geometry type and the state of a link.
//!
//! 链路几何类型以及链路的状态。
use apsis_math::Vec3;

View File

@ -1,4 +1,6 @@
//! Connectivity measures over a topology.
//!
//! 某拓扑上的连通性度量。
use apsis_topology::Topology;

View File

@ -1,5 +1,7 @@
//! Mesh connectivity abstractions.
//!
//! 网格连通性抽象。
//!
//! A satellite mesh is a set of terminals that reach each other through
//! links, some of which are satellite links and some of which are ground
//! links. This crate provides the abstractions that a mesh application needs

View File

@ -1,4 +1,6 @@
//! The mesh type and the summary of its redundancy.
//!
//! 网格类型及其冗余度摘要。
use crate::connectivity::{edge_connectivity, reachable_from, strongly_connected_components};
use apsis_topology::Topology;

View File

@ -1,5 +1,7 @@
//! Shortest path computation over a topology.
//!
//! 某拓扑上的最短路径计算。
//!
//! The algorithm is Dijkstra's, using a binary heap keyed by the tentative
//! distance. Costs are positive, so a node's distance is final when it is
//! first removed from the heap, which makes the algorithm exact.

View File

@ -1,4 +1,6 @@
//! Errors reported while routing.
//!
//! 路由时报告的错误。
use core::fmt;

View File

@ -1,5 +1,7 @@
//! Routing over time-varying satellite topologies.
//!
//! 时变卫星拓扑上的路由。
//!
//! The topology of a satellite network changes as the satellites move, so a
//! route is only valid over an interval. This crate computes least cost
//! routes through a [`Topology`] and reports the

View File

@ -1,4 +1,6 @@
//! The route types.
//!
//! 路由各类型。
/// One hop of a route.
///

View File

@ -1,4 +1,6 @@
//! Errors reported while building or querying a topology.
//!
//! 构建或查询拓扑时报告的错误。
use core::fmt;

View File

@ -1,4 +1,6 @@
//! The topology graph.
//!
//! 拓扑图。
use crate::error::{TopologyError, TopologyErrorKind};

View File

@ -1,5 +1,7 @@
//! Time-varying network topology.
//!
//! 时变网络拓扑。
//!
//! A satellite network is not a single graph. The set of usable links
//! changes as the satellites move, so the network is a sequence of graphs
//! indexed by time, and this crate provides the data structures for that

View File

@ -1,4 +1,6 @@
//! The time series of topologies.
//!
//! 拓扑的时间序列。
use crate::error::{TopologyError, TopologyErrorKind};
use crate::graph::Topology;