# PyPhotSystem **Repository Path**: Photlab/pyphot-system ## Basic Information - **Project Name**: PyPhotSystem - **Description**: 光纤传输系统、模块仿真运算库 - **Primary Language**: Python - **License**: MulanPubL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2024-10-30 - **Last Updated**: 2025-10-21 ## Categories & Tags **Categories**: eda **Tags**: None ## README # 1. 模块简介 PyPhotSystem一共分为两大模块光纤传输系统仿真和模块仿真。其中光纤传输系统仿真模块分为发射端, 光纤和接收端。模块仿真模块包含多个光模块。 # 2. 功能说明 ## 2.1 实现的组件: 目前实现的组件包括: - 随机二进制生成器 - QAM调制器 - RRC脉冲整形 - DAC的量化噪声 - 激光器产生的相位噪声 - 高斯白噪声 - 双偏振的光纤传输信道 - 收发端激光器造成的频偏 - 接收机造成的I/Q失衡 - ADC的量化噪声 - IQ正交化补偿 - 频偏估计和补偿 - 帧同步 - 自适应均衡 - BPS相位恢复 - 分析器画星座图 - 分析器画眼图 - 计算误码率和 Q 影响因子 - 信号功率 - 发射机 - 接收机 ## 2.2 其他功能 支持多种后端计算库如numpy, cupy, torch # 3. 依赖环境 首先创建虚拟环境 ```shell python -m venv .venv ``` 激活虚拟环境 ```shell .venv\Scripts\activate ``` 安装之前请升级pip到最新版 ```shell python.exe -m pip install --upgrade pip ``` 通过如下脚本一次性安装所有依赖 ```shell pip install -r requirements.txt ``` # 4. 开发指南 [开发指南](docs\component-dev.md) # 5. 调试方法 运行example*.py文件,添加print语句或者设置断点来查看代码运行情况 ```shell python example*.py ``` # 6. 打包方式 运行setup.py文件 ```shell python setup.py bdist_wheel ``` 运行结束,且无报错信息,会在当前目录下生成/dist文件夹,此文件夹下包含一个phot-0.5.2-py3-none-any.whl文件 # 7. 部署步骤 确保电脑已经安装python,pip ## 7.1 在线部署 ```shell pip install phot ``` ## 7.2 本地部署(建议) 确保电脑上已经有whl文件,在whl文件所在目录下,运行如下命令 ```shell pip install phot-0.5.2-py3-none-any.whl.whl ``` # 8. 版权声明