Interactive Cloud Microphysics & Aviation Weather Simulation Sandbox (WebGL2 · DE / EN / ZH)
⚠️ All Rights Reserved. Source visible for inspection only. No license granted. Any use requires prior written permission. See LICENSE-TERMS.md for details.
⚠️ 保留所有权利。 源码仅公开供查阅,不授予任何使用许可;任何使用均需事先获得书面授权。详见 LICENSE-TERMS.md。
核心定位:首个面向民航低能见度气象研判的浏览器端云微物理交互仿真工具(德 / 英 / 中三语本地化 · 纯前端 WebGL2 零依赖离线沙盒)。
一个纯前端、离线运行的云微物理参数化诊断、复杂气象特情分析与大涡模拟(ICON-LES / WRF)前处理沙盒:以可调参数对应经典单矩/双矩微物理方案(Kessler 1969、Khairoutdinov & Kogan 2000、Seifert & Beheng 2006 / ICON 2-moment、Koschmieder 能见度定律、多分散米氏散射),内置 ETH CLOUDLAB 过冷层云催化播云(WBF 冰化消云沟槽) 三维/二维联动诊断、民航复杂运行气象支持(METAR/SPECI/TAF、VIS/RVR/CMV、跑道风分解、高原 QNH/QFE、低温高度修正、飞机积冰指数) 以及模式配置与科研数据导出。
Overview (EN): CloudField is the first browser-based interactive cloud microphysics and aviation weather simulation sandbox designed for low-visibility meteorological decision support, atmospheric physics education, and Large-Eddy Simulation (ICON-LES / WRF) pre-processing. Running 100% offline in WebGL2 with zero external dependencies and full DE / EN / ZH trilingual localization, it bridges 1-moment / 2-moment bulk microphysics schemes (Kessler 1969, KK2000, Seifert & Beheng 2006), glaciogenic cloud seeding simulation (ETH CLOUDLAB Wegener–Bergeron–Findeisen trenching), METAR / SPECI / TAF inversion, runway VIS / RVR / CMV & ILS
$3^\circ$ slant visual range (SVR), aircraft icing (SLD / ICAO Doc 9640 HOT), and ABL micrometeorology inflow export for MATLAB/Simulink, OpenFOAM, ANSYS Fluent/FENSAP-ICE, and ParaView VTK.Überblick (DE): Interaktives Browser-Diagnose- und Simulationswerkzeug für Wolkenmikrophysik, Wolkenimpfung (ETH CLOUDLAB / WBF-Prozess) und Flugmeteorologie (METAR/TAF, RVR/SVR, Vereisung, ICON-LES-Vorverarbeitung) — reines WebGL2-Frontend, vollständig offline, dreisprachig (Deutsch / Englisch / Chinesisch).
Copyright © 2026 Tianyuan.J.Z (Zhang Heinrich) · 作者:Heinrich.Z & Tianyuan.J.Z · All Rights Reserved
CloudField 将三维实时体积云渲染与云微物理参数化、遥感观测算子及民航运行气象规程结合在同一离线环境中:
-
能见度与多相态消光计算:基于
β = 3·LWC/(2·ρ_w·r_e)(叠加多分散 Mie 有效方差$\nu_{\text{eff}}$ 修正与非球形冰晶习惯因子)及 Koschmieder 定律V = -ln(ε)/β(ε=0.02)。同时计入边界层气溶胶消光与云底以下降雨/降雪粒子下落消光(Marshall–Palmer 雨滴谱与 Sekhon–Srivastava 雪谱经验关系),实时给出 β、LWC、$r_e$、$N_c$ 及垂直廓线对比。 -
三套微物理参数化并排对比、源汇收支拆解与降水耗云质量守恒反馈(Kessler / KK2000 / ICON-SB06):支持切换 Kessler 1969(单矩阈值型)、KK2000(双矩大涡模拟幂律型) 与 ICON-SB06(Seifert & Beheng 2006 双矩谱宽耦合型),同屏绘制不同云滴数浓度
$N_c$ 下的准稳态降水率响应曲线,实时拆解**自动转化($P_{\text{ac}}$)、碰并收集($P_{\text{gr}}$)与 WBF 冰化($P_{\text{wbf}}$)贡献占比,支持降水转化耗散三维/二维云场密度的质量守恒反馈(washoutFeedback)**及气溶胶-上升气流 CCN 活化耦合(Twomey 第一间接效应与 Albrecht 第二间接效应诊断)。 -
ETH CLOUDLAB 人工播云(WBF 冰化)三维/二维沙盒与靶区最佳播撒点反演:支持点源播撒 AgI 碘化银($-5^\circ\text{C}$ 阈值)或液态 $\text{CO}2$($-0.5^\circ\text{C}$ 阈值),按 Murphy & Koop (2005) 过冷水面与冰面饱和水汽压差 $\Delta e{wi}(T)$ 驱动 Wegener–Bergeron–Findeisen(WBF) 水汽竞争过程,在 3D 视口与 2D 水平剖面中雕刻顺风向高斯扩散消云沟槽(Seeding Trench);提供跑道靶区最佳上风向播撒点自动反演(
optimalSeedingPoint),定量给出沟槽内能见度增益、跑道 CAT-I 标准恢复情况及播云前后的飞机积冰指数消减。 -
双模式热力学探空图解(
T-z直角廓线 ↔Skew-T log-p斜温图)、守恒量诊断与 LCL 云底耦合:底部主导垂直廓线画布支持一键切换T-z直角廓线图 与气象科研标准Skew-T log-p斜温-对数压力图(含$45^\circ$ 倾斜等温线、干绝热线$\theta$ 、CAPE 正浮力红区与 CIN 负浮力蓝区阴影、顶部LWC独立副坐标轴及湿球温度$T_w(z)$ 曲线);按 Bolton (1980) 精确公式输出位温$\theta$ 、相当位温$\theta_e$ 、饱和相当位温$\theta_{es}$ 、湿球温度$T_w$ 、湿球零度层(WBZ)、水汽混合比$r_v$ 与位势不稳定判据$\Delta\theta_e(0\to 3\text{km})$ ,采用虚温$T_v$ 浮力修正计算真实气块抬升轨迹、CAPE、CIN 与 LI;支持开启 LCL 热力学自动锚定对流云底(thermoCoupledBase) 及导入实测探空(z, p, T, Td)分段插值识别逆温层与冻雨暖鼻层。 - 多通道遥感观测算子、机载 X 波段气象雷达(WXR)与辐射能量收支:计算柱积分液水路径(LWP)、冰水路径(IWP)、总水路径(TWP)、地表向下短波辐照度、云球面反照率、耦合地表反照率的短波云辐射效应($\text{CRE}{\text{SW}}$)、Twomey 辐射强迫($\Delta F{\text{Twomey}}$)、$10.8\ \mu\text{m}$ 红外窗区卫星亮温、含双程 Beer–Lambert 衰减与退偏比的激光雷达后向散射;同时提供地面 S 波段天气雷达反射率(dBZ)与机载 X 波段(9.3 GHz,ARINC 708 四色标准)前视气象雷达双程雨衰修正及 PAC 雨衰阴影告警。
-
民航地面塔台、签派与机载进近运行支持:
-
METAR / SPECI / TAF 解析、质控与反演:兼容国际标准(KT、Axxxx 英寸汞柱)与中国民航规范(MPS 米/秒风速、CAVOK、NSC/SKC、VVxxx 垂直能见度、近时天气与风切变组);对低能见度大雾/霾报文自动反演贴地雾层与边界层气溶胶;支持将含
BECMG/TEMPO/FM的多时段复杂 TAF 报文直接转化为时间序列并绘制能见度演变曲线。 -
VIS / RVR / CMV、跑道三段式 RVR(TDZ / MID / END)与 ILS
$3^\circ$ 下滑道斜程能见度(SVR):遵循 ICAO Doc 9365 与 EASA AMC NCO.OP.110,结合有效能见度/RVR 与最低 BKN/OVC 云底高(Ceiling)判定CAVOK / VMC / CAT-I / CAT-II / CAT-IIIA~C等级;沿 3.6 km 跑道轴线实时采样接地区(TDZ)、中间段(MID)、停止端(END)三段式 RVR;计算飞行员沿 ILS$3^\circ$ 下滑道进近的斜程能见度(SVR)与决断高(DH 200 ft / 100 ft)目视参考建立判据;支持跑道磁航向顶风/顺风/正侧风分量分解与超限告警。 - 高原/高高原机场 QNH↔QFE、密度高度(DA)与严寒机场高度表修正:内置中国民航机场表(WGS-84 坐标与海拔),自动识别一般高原($\ge 1524\text{ m}$)与高高原机场($\ge 2438\text{ m}$),实时换算修正海平面气压 QNH、场面气压 QFE、计入高湿虚温修正的密度高度(Density Altitude,DA)与起飞滑跑距离增量,并按 ICAO Doc 8168 (PANS-OPS) 计算严寒天气下决断高(DH/MDH)的低温气压高度表正修正量。
-
飞机积冰(SLD)、地面除防冰液保持时间(ICAO Doc 9640 HOT)、颠簸耗散率(EDR)与低空风切变(LLWS):根据过冷水含量(SLWC)、温度效率窗($0 \sim -38^\circ\text{C}$)与有效滴径
$r_e$ 计算飞机积冰严重度与 SLD 告警;按 ICAO Doc 9640 / SAE ARP4737 计算地面除防冰液(Type I / Type II / Type IV)在霜、冻雾、小/中雪、冻毛毛雨与轻度冻雨下的保持时间窗口(Holdover Time,HOT,分钟);输出国际民航标准**湍流涡旋耗散率$\text{EDR}$ ($\text{m}^{2/3}\text{s}^{-1}$)**与进近走廊$0\text{–}500\text{ m}$ 低空垂直风切变($\text{kt/100ft}$)及微下击暴流告警。 -
CCAR-121 / ICAO Annex 6 备降场最低标准与单屏签派放行简报(
签派放行总览):支持按一套导航设施(云高$+120\text{ m}$ / 能见度$+1600\text{ m}$ )与双套独立导航设施(云高$+60\text{ m}$ / 能见度$+800\text{ m}$ )核算目的地/起飞备降场天气资质,并在「数据接口 → 签派放行总览」页生成汇总场压/密度高度、跑道风、三段 RVR、除防冰保持时间、备降场标准与高空危险天气的单屏签派放行与塔台管制综合简报(RELEASE / CAUTION / HOLD)。 -
低空经济(UAV / eVTOL / 播云无人机)适航与光电吊舱(EO/IR)透过率评估:针对
$0\text{–}1000\text{ m AGL}$ 低空空域(uavLowAltitudeAssessment),综合评估无除冰碳纤维旋翼积冰指数、锂电池低温可用容量折减率($%$)、抗风与湍流边界、$1\text{ km}$ 斜距可见光($550\text{ nm}$)与短波红外($1550\text{ nm}$)光电吊舱大气透过率,输出GO / CAUTION / NO-GO适航放行状态与受限因子。 -
高空巡航(FL260–FL400)飞机凝结尾迹(Contrail)与静力稳定度评估:按 ICAO / WMO Schmidt–Appleman 判据(
cruiseContrailAssessment)计算巡航高度层混合斜率$G$ ($\text{Pa/K}$)、凝结尾迹临界生成温度$T_{\text{LM}}$ 、对冰相对湿度$\text{RHi}$ 与冰过饱和区(ISSR)持续性卷云尾迹生成判据,同时输出巡航层位温$\theta$ 与 Brunt–Väisälä 静力稳定度频率$N_{\text{BV}}$ 。
-
METAR / SPECI / TAF 解析、质控与反演:兼容国际标准(KT、Axxxx 英寸汞柱)与中国民航规范(MPS 米/秒风速、CAVOK、NSC/SKC、VVxxx 垂直能见度、近时天气与风切变组);对低能见度大雾/霾报文自动反演贴地雾层与边界层气溶胶;支持将含
-
MATLAB / Simulink、主流 CFD 求解器与结冰软件原生兼容:
-
大气边界层(ABL)风廓线与
$k\text{–}\varepsilon$ 湍流入口剖面(Atmosphere.windProfileAt):生成随高度变化的 Hellmann 幂律风切变、北半球 Ekman 螺线风向顺转($0 \to +20^\circ$)、速度分量$(u, v, w)$ 、湍流动能$\text{TKE } k(z)$ ($\text{m}^2/\text{s}^2$)、湍流耗散率$\varepsilon(z)$ ($\text{m}^2/\text{s}^3$)、空气密度$\rho(z)$ 、位温$\theta(z)$ 与比湿$q_v(z)$ 。 -
FENSAP-ICE / NASA LEWICE 7-Bin Langmuir 多分档液滴谱与收集效率(
Physics.langmuirDropletSpectrum):计算中值体积直径$\text{MVD}$ 、Langmuir 7 档粒径权重、无量纲惯性参数$K_0$ 、机翼/旋翼前缘驻点收集效率$\beta_0$ ,以及基于 Messinger (1953) 热平衡的冻结分数$f_{\text{freeze}}$ 与冰型(霜冰RIME/ 混合冰MIXED/ 明冰GLAZE)。 -
多生态工程与科研一键导出:支持直接导出 MATLAB / Simulink / Aerospace Blockset 原生工作区脚本(
.m)、OpenFOAM 2.0ABLConditions边界层入口字典(.foam)、ANSYS Fluent S-Expression 边界廓线与 FENSAP-ICE 液滴谱(.prof)、ParaView / Tecplot / VisIt 三维结构化网格标量与风矢量场(.vtk)、ICON-LES / WRF Fortran Namelist(.nml)、CLOUDLAB 实验清单(.yaml)、57 层完整垂直廓线 CSV,并同时提供 Python SDK(sdk/cloudfield_sdk.py) 与 MATLAB / GNU Octave SDK(sdk/cloudfield_sdk.m)。
-
大气边界层(ABL)风廓线与
# 方式 A:直接打开(离线,零依赖)
# 用浏览器打开 index.html 即可(推荐 Chrome/Edge,需支持 WebGL2)
# 方式 B:本地静态服务(避免个别浏览器对 file:// 的限制)
python3 -m http.server 8080
# 然后访问 http://127.0.0.1:8080/无需联网、不上传任何数据。所有计算在浏览器本地完成。
界面语言与单位:顶栏右侧的
DE / EN / 中文切换界面语言(顺序即德→英→中,默认德文),旁边的常用 / SI切换单位体系(hPa↔Pa、°C↔K、km↔m),两者均保存在本地localStorage。详见第 6、7 节。
CloudField/
├── index.html # 顶栏 + 三栏:控制面板 | 视口(含剖面高度轴) | 诊断面板(读数/公式/色标)
├── LICENSE-TERMS.md # 授权条款(All Rights Reserved;仅公开供查阅,使用需书面许可)
├── README.md
├── 开发日志.md # 开发历程与版本更新记录
├── .gitignore
├── css/style.css # 界面样式表(深色气象台主题)
├── js/
│ ├── i18n.js # 三语层:中文/英文/德文(默认德文),顶栏分段切换 + data-i18n
│ ├── units.js # 单位体系:常用(hPa/°C/km) ↔ SI(Pa/K/m),显示层实时换算
│ ├── colormap.js # 各物理量独立色标与归一化区间,导出 256×1 LUT 给着色器
│ ├── gl-utils.js # WebGL2 基础工具集
│ ├── camera.js # 轨道相机(透视/顶/侧/前 视角)
│ ├── atmosphere.js # 大气热力与微物理核心模型(STATE / 探空分段插值 / WBF 水汽差 / 风平流)
│ ├── clouds.js # WebGL2 体积云渲染器(早停 / 抖动+TAA / 空区间跳步 / 自适应 DPR / Worker)
│ ├── sliceaxis.js # 可拖拽剖面高度轴,与 3D 云场水平切片亮线联动
│ ├── monitor.js # 垂直廓线 / 水平切片 / 仪表卡 / 能见度仪表盘 / 曲线·场·热力图·泰勒图
│ ├── gui.js # 控制面板与高级诊断弹窗(含 CLOUDLAB、时序、空间场、敏感性、质控等分页)
│ ├── integration.js # 民航与系统集成:METAR/TAF · VIS-RVR-CMV · 跑道风 · 机场表(QFE/低温修正) · Bridge
│ ├── main.js # 初始化、渲染主循环、顶栏状态、弹窗、分享链接恢复、Bridge 接线
│ ├── physics.js # 详细消光分解 / 相态与冰晶习惯 / 降水消光 / 飞机积冰指数 / 空间统计 / 敏感性扫描
│ ├── mie.js # 多分散米氏散射(反常衍射 + 5 点 Gauss-Hermite 求积)Q_ext 查表
│ ├── radiation.js # 双流近似 T/R 查表(地表太阳辐照度、云球面反照率)
│ ├── spectrum.js # Gamma / 对数正态 / 实测滴谱 → N、r_e、ν_eff、LWC 矩计算
│ ├── phases.js # 相态分档与预设(纯水/混合/卷云/降雪/对流)
│ ├── operators.js # 观测算子:LWP/IWP、CRE_SW、辐照度、反照率、卫星亮温、激光雷达、雷达 dBZ
│ ├── kessler.js # 微物理演进与方案对比(Kessler / KK2000 / ICON-SB06 + WBF 冰化消耗)
│ ├── timeseries.js # 时变预报:CSV / TAF 时序插值推进与能见度演变曲线
│ ├── qc.js # 探空 / METAR 数据质控(兼容 MPS/KT、静力平衡与逆温检验)
│ ├── validation.js # 偏差 / MAE / RMSE / 相关系数 + 泰勒图
│ ├── export.js # METAR / IWXXM / BUFR / GRIB / Namelist / YAML / CSV 导出与推送
│ ├── batch.js # 多站点批量诊断(供 CLI 与 Python SDK 调用)
│ ├── recorder.js # 场景录制与回放(状态快照时间轴)
│ ├── report.js # 自包含 HTML 诊断报告 / 截图标注 / 分享链接(URL 状态编码)
│ └── help.js # 参数释义卡片 + 典型天气场景预设
├── tools/
│ └── cli.js # Node 命令行批处理工具(支持导出 CSV / JSON / MATLAB / OpenFOAM / Fluent / VTK / Namelist / YAML)
├── sdk/
│ ├── cloudfield_sdk.py # Python SDK:封装 CLI 批处理与科研/CFD 多格式解析
│ └── cloudfield_sdk.m # MATLAB / GNU Octave SDK:一键导入工作区结构体、1D 查找表、二维切片与批量计算
├── bridge-adapter/ # 独立 IPC 服务端进程(Node,纯内置模块)
│ ├── server.js
│ ├── schema.js
│ ├── airports_cn.js
│ ├── package.json
│ └── README.md
└── docs/
├── methodology.md # 物理公式、参数化映射、民航换算规程与方法学说明
├── architecture.md # Core/Worker + Renderer + Bridge 系统架构
└── roadmap.md # 功能规划与演进记录
| 物理量 / 模块 | 公式与关系 | 说明 |
|---|---|---|
| 云滴消光系数 | β = 3·LWC / (2·ρ_w·r_e) |
几何光学基准,单位 m⁻¹(LWC 取 g/m³、$r_e$ 取 µm 时系数为 1.5) |
| 多分散米氏修正 | β = 1.5·LWC/r_e · (Q_ext(x, ν_eff)/2) |
反常衍射近似 + 5 点 Gauss–Hermite 谱宽求积(js/mie.js) |
| 降雨/降雪消光 |
|
云底至地面下落降水粒子消光(单位 m⁻¹,$R$ 为 mm/h) |
| 昼间气象能见度 |
V = -ln(ε)/β,ε=0.02 |
Koschmieder 定律,V ≈ 3.912/β
|
| 微物理自动转化 | Kessler 阈值 / KK2000 幂律 / SB06 谱宽耦合 | 单矩与双矩暖雨自动转化及碰并收集(js/kessler.js) |
| WBF 水汽压差 | Murphy & Koop (2005),在 |
|
| 双流辐射与强迫 |
|
耦合地表反照率 |
| 场面气压换算 | 高原/高高原机场 QNH ↔ QFE 压高互逆换算 | |
| 密度高度 (DA) | $\text{DA}{\text{ft}} = \text{PA}{\text{ft}} + 118.8 \cdot (T_v - T_{\text{ISA}})$ | 计入高湿虚温 |
| 低温高度修正 | ICAO Doc 8168 (PANS-OPS) 严寒机场决断高正修正 | |
| 下滑道斜程能见度 | ILS |
|
| 相当位温 (Bolton) | 湿绝热过程守恒量;$\partial \theta_e / \partial z < 0$ 判别对流/位势不稳定 | |
| 对流有效位能 | 计入水汽虚温 |
|
| 凝结尾迹临界温度 | $G = \frac{\text{EI}_{\text{H}2\text{O}} c_p p}{\varepsilon Q (1-\eta)}$,$T{\text{LM}} = -46.46 + 9.43\ln(G-0.053) + 0.72[\ln(G-0.053)]^2$ | Schmidt–Appleman 高空巡航尾迹生成与持续判据 |
详细推导与参数化说明见 docs/methodology.md。
- 气象数据输入与时序转化:支持 METAR / SPECI / TAF 解析(ICAO Annex 3 + WMO FM15/16 及中国民航 MPS 规范),解析结果可一键驱动三维场景(含低能见度大雾/垂直能见度自动成雾反演);复杂 TAF 的
BECMG/TEMPO/FM演变段可直接生成时间序列演变曲线。 - VIS / RVR / CMV 与跑道运行分析:提供三模式切换(ICAO Doc 9365 + EASA NCO.OP.110)、CMV 禁用条款交互核查、CAVOK / CAT-I…IIIC 预设、与当前 3D 场景最差能见度/最低云底高的双向同步,以及跑道磁航向顶风、顺风、正侧风分量分解与超限提示。
- IPC 实时通信:WebSocket Delta 协议(snapshot / delta / telemetry,schema 版本化)+ REST API + 事件录制与时间轴回放。
- 机场数据库与高原/低温运行核算:内置中国民航代表性机场表(WGS-84 经纬度与海拔),支持跨语言搜索、设为当前活动运行场站(联动 METAR 导出)、高原/高高原机场等级标识、QNH ↔ QFE 实时换算,以及严寒条件下决断高(DH)的 ICAO Doc 8168 低温修正。
入口:界面右上“数据接口”按钮 → 六个标签页(METAR/TAF、VIS/RVR/CMV、机场表、签派放行总览、Bridge、事件录制/回放)。
- 默认语言:德文(Deutsch)。
- 顶栏右侧
DE / EN / 中文分段控件切换(第一德语、第二英语、第三中文,选择记忆于localStorage)。 - 覆盖范围:控制面板、工具栏、HUD、底部监控、能见度仪表盘、高级诊断弹窗、说明弹窗,以及“数据接口”面板的全部界面文案;ICAO 现在天气代码描述(23 个)与内置机场表(63 个)的机场名同样提供三语,机场搜索支持跨语言命中(任输中文/英文/ICAO/IATA)。
- 运行环境:需要支持 WebGL2 的浏览器(3D 视口)。若初始化或渲染失败,加载区会显示简洁的三语错误摘要,完整日志可查看浏览器控制台(F12)。
信息架构
- 顶栏:品牌、运行状态(播放/暂停 + 时间流速 + 渲染质量 + FPS)、单位体系、语言。
- 右侧面板分三个 Tab:读数(当前值 + 历史曲线 + 对比快照)/ 公式(每条公式下方附当前数值代入结果)/ 色标(各物理量色标条与当前值指针)。
- 底部垂直廓线图作为主导读图窗口(画布 640×230,同时绘制温度
$T(z)$ 、露点$T_d(z)$ 、液态水含量$\text{LWC}(z)$ 与冰相分数$f_{\text{ice}}(z)$ ),实时读数收成 12 张紧凑仪表卡,模拟状态单独一栏。
交互反馈
- 每条滑块右侧均有实时数值回显(且上下限与步长随常用/SI 单位自动切换)。
- 风向采用罗盘旋钮:0–360° 周期量,同时给出来向指针、流向箭头与八方位名称。
- 视口右侧的剖面高度轴可拖拽(也可点击轨道跳转或滚轮微调),手柄高度对应水平切片高度,3D 云场内同步绘制琥珀色高亮切片边框;轴上另有只读橙色标记指示当前最低能见度所在高度。
色标与口径
-
四个微物理量各有独立色标与归一化区间:
量 色标(冷暖/感知均匀) 归一化区间 云水 LWC 蓝 → 白 → 红(冷暖) 0 – 1.5 g/m³ 消光 β viridis 0 – 80 km⁻¹ 有效半径 rₑ cividis 2 – 25 µm 滴数浓度 N plasma 0 – 1000 cm⁻³ 色标定义在
js/colormap.js,同一份定义导出为 256×1 LUT 纹理交给着色器,3D 云体、水平切片、图例色标条三处颜色严格一致。 -
3D 云体可叠加半透明微物理着色(LWC / β / 派生
$r_e$ / 滴数浓度$N$ ),不透明度可调。 -
总云量口径:
1 − Π(1 − 各层云量),按各层随机重叠(相互独立)合成。
单位体系
常用:°C / hPa / km / m·s⁻¹;SI:K / Pa / m / m·s⁻¹。物理计算内部统一使用 °C、hPa、km,在显示层做无损换算。
为了在浏览器内兼顾实时帧率与三维微物理保真度,WebGL2 体积云渲染器(js/clouds.js)采用了以下设计:
- 保守邻域膨胀的 Occupancy 粗网格:Web Worker 计算 16³ 粗网格后执行 3×3×3 邻域最大值膨胀,并上传为
R16F线性过滤三维纹理,避免薄云或碎积云边缘在空区间跳步时被误判截断。 - 连续过渡步长与真实段长光学厚度结算:光线步进长随 occupancy 连续插值过渡,光学厚度按当前步的实际几何段长
d · step · absorb积分,消除体素网格边界伪影。 - 三维 GPU 与二维 CPU 同源分形噪声:三维片元着色器、Occupancy Worker 与 CPU 诊断模块(
js/atmosphere.js)共用同一套三线性插值值噪声与 5 阶分形布朗运动(fBm),并按统一的顺风向上游回溯p - uWind * uTime平流,确保三维视口、二维水平剖面与单点探针读数同源。 - 向阳阴影早停与自适应分辨率:向阳次级光线超出云顶或累积光学厚度超过 3.2 时提前终止;渲染分辨率根据帧耗时 EMA 在 0.55–1.5 DPR 之间平滑调节(带防抖死区,保护 TAA 时域抗锯齿累积帧)。
本软件为专有软件(proprietary),全部权利由作者保留。本仓库在 GitHub 上仅用于版本管理与备份,不构成对任何第三方的使用许可或公开授权。
使用授权:如需使用本软件,请联系作者获取书面授权。
免费授权(学术与科研用途):在德国、中国、法国的学术与科研用途,当项目/课题的纵向经费低于 30,000 美元(USD 30,000)时,经作者书面授权后可免费使用;使用时必须引用本项目,并作出书面鸣谢。
其他用途(商业与业务运营、经费达到或超过上述额度、或其他国家/地区)不在免费授权范围内,须与作者另行协商并获得书面授权。
版权:© Tianyuan.J.Z(Zhang Heinrich),保留所有权利。
补充说明(素材与署名):
- 界面上的 © 标识为本项目的自有版权署名(顶栏品牌区、侧栏页脚)。
- 全站零外部资源:不引第三方字体(用系统字体栈)、不引图片/图标(界面里的 ☁ ✕ ▾ 等均为 Unicode 字符)、不引 CDN 脚本。
- 物理公式与参数化方案均为公开文献(Kessler 1969、Khairoutdinov & Kogan 2000、Seifert & Beheng 2006、Murphy & Koop 2005、Koschmieder、Ångström、ICAO Doc 9365、ICAO Doc 8168、EASA NCO.OP.110),引用见
docs/methodology.md。
所有计算在本地浏览器完成,不采集、不上传任何数据。VIS/RVR/CMV 转换遵循 ICAO Doc 9365 与 EASA AMC 至 NCO.OP.110(2024 第5版)。
CloudField 是纯前端、离线、零外部资源的单页应用,唯一的硬性要求是浏览器支持 WebGL2(着色器使用 sampler3D、R16F 可线性过滤纹理、GLSL ES 3.00)。
技术特性
- 渲染:WebGL2 片元着色器体积光线步进(ray-marching),步数
= 36 + 64×质量(默认质量 0.8 → 约 87 步);自适应 devicePixelRatio(上限 1.5),并按帧时间 EMA 自动调节渲染分辨率。 - 计算:occupancy 粗网格(16³ + 3×3×3 膨胀)在 Web Worker 中计算,主线程负责物理诊断与 UI。
- 显存:occupancy 纹理约 16 KB;TAA/累积为 3 张 RGBA8 目标,随画布分辨率线性增长(1080p×1.5dpr ≈ 31 MB)。
| 维度 | 最低配置(能跑、可读图) | 建议配置(流畅 60 FPS、高质量) |
|---|---|---|
| 操作系统 | Windows 10 / macOS 10.15 / 主流 Linux 发行版 / Android 8+ / iOS 15+ | 同上,任一较新版本 |
| 浏览器 | 支持 WebGL2:Chrome / Edge 56+、Firefox 51+、Safari 15+(桌面);Chrome Android 56+、Safari iOS 15+ | 上述浏览器的最新版 |
| GPU | 支持 WebGL2 的集成显卡(Intel HD 4000 及更新 / Iris、AMD Radeon、Apple M 系列、Mali/Adreno 带 WebGL2 驱动) | 独立或较新的集成显卡(GTX/RTX、Radeon RX、Apple M1 及以上),WebGL2 硬件加速良好 |
| CPU | 双核 2.0 GHz 以上(一核主线程、一核 occupancy Worker) | 四核 3.0 GHz 以上 |
| 内存 | 4 GB(与系统/浏览器共享) | 8 GB 以上 |
| 显示 | 1280×720(三栏布局可用但偏紧) | 1920×1080 或更高;高分屏(Retina/4K)经自适应 DPR(上限 1.5)支持 |
| 存储 | 可忽略(应用本身数 MB;偏好存 localStorage) | 同上 |
| 网络 | 无需联网,完全离线;可直接 file:// 打开 index.html(无需服务器)。若个别浏览器对 file:// 有限制,用 python3 -m http.server 起本地静态服务即可 |
同上 |
- ETH CLOUDLAB / ICON-LES:用大涡模拟复现外场播云实验、对比不同微物理参数化方案并开展敏感性试验——本工具以浏览器端实时可调的交互式沙盒形式,服务于微物理教学、实验前处理与民航复杂低能见度气象研判。
感谢 MonikaSong G.C(南京) 提供专业知识支持。
感谢 Alvin Lv 提供稳定性测试协助。
感谢 Huaneng Yuan 提供测试协助。
© Tianyuan.J.Z · 作者 Heinrich.Z & Tianyuan.J.Z