e2m2e.mbse package
MBSE (Model-Based Systems Engineering) 模型层
提供 SysML 风格的系统建模基础设施,包括:
需求模型 (requirements/): 形式化需求定义与追溯矩阵
架构模型 (architecture/): 组件登记与依赖关系
数据模型 (data/): Pydantic 统一数据结构
图表生成 (diagrams/): Mermaid 图表自动生成
所有模型均为 living artifacts,随实现代码同步更新。
e2m2e.mbse.data package
数据模型子包
提供基于 Pydantic 的统一数据结构。领域枚举见 e2m2e.data.templates.enums。
e2m2e.mbse.data.core_models module
核心数据模型
基于 Pydantic 的统一数据结构,替代现有分散的 dict/plain class/dataclass 混用模式。
所有模型支持 JSON 序列化/反序列化和运行时类型验证。
- class e2m2e.mbse.data.core_models.NumpyArray(shape, dtype=None, buffer=None, offset=0, strides=None, order=None)[源代码]
基类:
ndarrayPydantic 兼容的 numpy 数组类型标记
作为字段类型注解使用,实际的形状校验由各字段上的 @field_validator 完成,本类本身不包含 validator。
- class e2m2e.mbse.data.core_models.OrbitProperties(*, period=None, amplitudes=None, extrema=None, mean_state=None, center=None, is_periodic=False, periodicity_error=None)[源代码]
基类:
_NumpyModel轨道属性数据模型
从 Orbit 类中提取的计算属性组。
- 变量:
period (float | None) -- 轨道周期(无量纲时间)
amplitudes (dict[str, float] | None) -- 各方向振幅 {'x': float, 'y': float, 'z': float}
extrema (dict[str, float] | None) -- 极值点 {'x_max': float, 'x_min': float, ...}
mean_state (np.ndarray | None) -- 平均状态向量,形状 (6,)
center (np.ndarray | None) -- 轨道中心点(位置分量均值),形状 (3,)
is_periodic (bool) -- 是否为周期轨道
periodicity_error (float | None) -- 周期性误差(首末状态欧氏距离)
- 参数:
- model_config = {'arbitrary_types_allowed': True}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
e2m2e.mbse.architecture package
架构模型子包
提供组件模型(ADR 0001: Protocol 接缝已移除,多态通过 Dynamics 基类实现)。
e2m2e.mbse.architecture.components module
组件模型
将具体实现类关联为 SysML BDD 中的组件层次。
每个 Component 记录其源代码位置和依赖关系。
- class e2m2e.mbse.architecture.components.Component(name, module_path, protocols=<factory>, dependencies=<factory>, layer='mbse', description='')[源代码]
基类:
object系统组件定义
对应 SysML BDD 中的一个块(Block),记录其接口契约和依赖。
- 变量:
- 参数:
e2m2e.mbse.architecture.data_components module
数据层组件目录。
e2m2e.mbse.architecture.algorithm_components module
算法层组件目录。
e2m2e.mbse.architecture.numerical_components module
数值层组件目录。
e2m2e.mbse.architecture.api_components module
接口层组件目录。
e2m2e.mbse.architecture.tools_components module
工具层组件目录。
e2m2e.mbse.requirements package
需求模型子包
提供形式化的需求定义、注册和追溯能力。
e2m2e.mbse.requirements.base module
需求模型基础类
提供形式化的需求定义和注册机制,支持 SysML 需求图的自动生成。
每个需求具有唯一 ID、分类、优先级、验证方法,以及与代码和测试的追溯链接。
- class e2m2e.mbse.requirements.base.RequirementCategory(*values)[源代码]
基类:
Enum需求分类(对应 SysML 需求类型)
- FUNCTIONAL = 'functional'
- PERFORMANCE = 'performance'
- INTERFACE = 'interface'
- VERIFICATION = 'verification'
- CONSTRAINT = 'constraint'
- class e2m2e.mbse.requirements.base.RequirementPriority(*values)[源代码]
基类:
Enum需求优先级(对应 SysML <<shall>>, <<should>>, <<may>>)
- SHALL = 'shall'
- SHOULD = 'should'
- MAY = 'may'
- class e2m2e.mbse.requirements.base.Requirement(id, title, category, description, priority=RequirementPriority.SHALL, verification_method='test', parent=None, linked_code=<factory>, linked_tests=<factory>)[源代码]
基类:
object形式化需求定义
对应 SysML Requirement Diagram 中的需求元素。
- 变量:
id (str) -- 唯一标识符,如 "REQ-001"
title (str) -- 简短标题
category (e2m2e.mbse.requirements.base.RequirementCategory) -- 需求分类
description (str) -- 详细描述
priority (e2m2e.mbse.requirements.base.RequirementPriority) -- 优先级(shall/should/may)
verification_method (str) -- 验证方法(test/analysis/inspection)
parent (str | None) -- 父需求 ID(用于需求分解层次)
- 参数:
- category: RequirementCategory
- priority: RequirementPriority = 'shall'
- class e2m2e.mbse.requirements.base.RequirementRegistry[源代码]
基类:
object需求注册表。
调用方持有注册表生命周期,支持按分类、层次和追溯关系查询。
- register(requirement)[源代码]
注册一个需求
- 参数:
requirement (Requirement)
- 返回类型:
None
- register_many(requirements)[源代码]
批量注册需求
- 参数:
requirements (list[Requirement])
- 返回类型:
None
- by_category(category)[源代码]
按分类筛选需求
- 参数:
category (RequirementCategory)
- 返回类型:
- traceability_matrix()[源代码]
构建需求追溯矩阵
- 返回:
- {"requirement": Requirement, "code": [...],
"tests": [...], "has_coverage": bool}}
- 返回类型:
{req_id
e2m2e.mbse.requirements.core_requirements module
核心层需求定义。
定义 e2m2e 的系统建模、动力学传播、轨道数据和坐标变换等基础需求。 需求 ID 范围:REQ-001 ~ REQ-030。
e2m2e.mbse.requirements.algorithms_requirements module
Algorithms 层需求定义
定义 e2m2e 算法层(algorithms/)的系统需求,覆盖微分修正、延拓、 稳定性分析、多点射击法等核心数值算法。需求 ID 范围:REQ-100 ~ REQ-119。
e2m2e.mbse.diagrams package
图表生成子包
提供 SysML 风格的 Mermaid 图表自动生成。
e2m2e.mbse.diagrams.generator module
Mermaid 图表统一生成编排器
从 MBSE 模型定义自动生成 SysML 风格的 Mermaid 图表,嵌入 MkDocs 文档。
支持的图表类型: - BDD (Block Definition Diagram) → classDiagram - IBD (Internal Block Diagram) → graph - Activity Diagram → flowchart - Sequence Diagram → sequenceDiagram - State Machine → stateDiagram-v2 - Requirement Diagram → requirementDiagram
- class e2m2e.mbse.diagrams.generator.DiagramGenerator(requirements=None, components=None)[源代码]
基类:
objectMBSE 图表生成编排器
从 RequirementRegistry 和 ComponentRegistry 生成 Mermaid 图表。
- 参数:
requirements (RequirementRegistry | None)
components (ComponentRegistry | None)
- __init__(requirements=None, components=None)[源代码]
初始化图表生成器
- 参数:
requirements (RequirementRegistry | None) -- 需求注册表实例,默认使用全局单例
components (ComponentRegistry | None) -- 组件注册表实例,默认使用全局单例
- generate_requirement_diagram()[源代码]
生成 Requirement Diagram — Mermaid requirementDiagram
- 返回:
Mermaid requirementDiagram 语法字符串
- 返回类型:
- generate_state_machine(name, states, transitions)[源代码]
生成 State Machine Diagram — Mermaid stateDiagram-v2