Skip to content

MualaniMarine/Salinity-Toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

盐度计算器

English README

一个基于浏览器运行的盐度计算工具,适用于鱼缸维护、常压实验与常规工程估算场景。

本项目支持:

  • 比重与盐度数值双向换算
  • 样品温度与仪器校准温度修正
  • 比重计校准报告修正
  • 补水、换水与固体盐补加的盐度调整计算

当前实现以 TEOS-10 / GSW-JS 为热力学计算基础,全部逻辑在前端完成,无需后端服务。

功能特性

  • 比重 盐度数值双向换算
  • 17.5°C20°C25°C 及自定义参考温度
  • 校准报告线性插值修正
  • 校准报告导入、导出与浏览器本地缓存
  • 盐度调整计算
  • 固体盐补加质量估算
  • 页面内置计算依据与参考来源说明

快速开始

直接使用浏览器打开 index.html 即可,无需构建或安装依赖。

项目结构

.
├─ index.html
├─ styles.css
├─ app.js
├─ LICENSE
├─ README.md
├─ README.en.md
└─ vendor/
   └─ teos10/
      ├─ TEOS10_gsw_saar_data.js
      ├─ TEOS10_gsw_oceanographic_toolbox_min.js
      └─ TEOS10_gsw_saar_min.js

使用说明

1. 比重 / 盐度换算

换算模块支持两个方向:

  • 比重 → 盐度
  • 盐度 → 比重

主要输入项包括:

  • 测得比重或盐度数值
  • 样品温度
  • 仪器校准温度

其中,校准报告修正仅在 比重 → 盐度 路径下参与计算。

2. 校准报告修正

校准报告面板支持录入以下数据:

  • 标称比重
  • 修正值
  • 不确定度

当测得值位于两个相邻标称点之间时,程序采用线性插值计算当前修正值。

支持能力包括:

  • 手动编辑
  • JSON 导出
  • JSON / CSV 导入
  • 浏览器本地自动缓存

3. 盐度调整计算

调整模块支持以下模式:

  • 直接补加
  • 等体积换水
  • 加入固体盐

该模块面向实际操作规划,不用于完整混合热力学平衡模拟。

技术基础

热力学模型

本项目采用官方 TEOS-10 / GSW-JS 工具箱进行密度计算。

在当前页面实现中:

  • 页面显示盐度数值记为 Sdisp
  • 换算流程内部按 SP = Sdisp 处理
  • 通过 gsw_sr_from_sp(SP) 计算 SR
  • 在当前输入条件下采用 SA ≈ SR 的工程近似
  • 密度通过 gsw_rho_t_exact(SA, t, p) 计算

当前页面固定采用:

  • p = 0 dbar

因此,本工具适用于:

  • 表层条件
  • 常压条件
  • 鱼缸维护
  • 常规实验估算

比重换算

盐度至比重:

SG = ρsw(Sdisp, tsample) / ρw(tref)

比重至盐度:

ρtarget = SG × ρw(tref)
F(Sdisp) = ρsw(Sdisp, tsample) - ρtarget = 0

反算过程采用二分法数值求解。

校准报告修正

SGcorrected = SGmeasured + Correction(SGmeasured)

当测得值位于两个相邻校准点之间时:

Correction(SG) = C1 + (C2 - C1) × (SG - SG1) / (SG2 - SG1)

盐度调整计算

直接补加:

Vadd = Vtank × (Starget - Scurrent) / (Ssource - Starget)

等体积换水:

Vreplace = Vtank × (Starget - Scurrent) / (Snew - Scurrent)

固体盐补加:

Msalt = Msystem × (Starget - Scurrent) / (1000 - Starget)

适用范围与限制

  • 当前实现固定采用 0 dbar
  • 页面未采集经纬度与压力剖面
  • 绝对盐度部分采用 SA ≈ SR 工程近似
  • 页面盐度以便于使用的 ppt 风格数值展示
  • 校准不确定度当前仅展示,不自动传播到最终结果

如需面向科研级海洋资料处理,建议进一步扩展:

  • 完整 gsw_sa_from_sp(SP, p, lon, lat) 链路
  • 压力输入
  • 地理位置输入
  • 不确定度传播分析

参考来源

许可证

本项目基于 MIT License 发布。详见 LICENSE

About

盐度计算器,基于TEOS-10 / GSW-JS

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages