创作不易,如觉不错,还请点赞、关注、给好评,谢谢!
前言
最近在工作中,涉及到了TEOS-10标准协议的使用,发现该协议在网上的资料比较少,遂决定写篇文章记录一下TEOS-10标准协议的使用,旨在记录自己的学习过程,也希望能够帮助更多需要的人。
一、TEOS-10标准是什么?
TEOS-10基于吉布(Gibbs)函数公式,可以以热力学一致的方式推导出海水的所有热力学性质(密度、焓、熵声速等)。2009年6月,政府间海洋学委员会第25届大会通过了TEOS-10取代EOS-80的提案,TEOS-10标准成为海洋科学中对海水和冰性质的官方标准。
二、GSW库是什么?
在TEOS-10协议中,分为了2个官方标准库:Gibbs-SeaWater (GSW)和Seawater-Ice-Air (SIA)。
GSW库主要用来描述海水的热力学性质,而SIA库描述了冰和湿空气的特性。
本文主要介绍GSW库的使用。
三、如何使用GSW库?
1.下载地址
官方下载地址:https://www.teos-10.org/software.htm
Github下载地址:https://github.com/TEOS-10
官方文档手册下载地址:https://www.teos-10.org/software.htm
2.编译安装
以https://github.com/TEOS-10/GSW-C版本为例,下载完后,在目录中可以看到“README”文件,里面分别写了在Unix和Windows系统中,该如何编译安装。
此处以Windows为例,使用VS的开发者命令行,进入工程目录,执行nmake,执行成功后,在工程目录下可以看到“gsw_check.exe”可执行程序,使用命令行执行该程序,可以看到提示安装成功。
3.编程使用
GSW库的函数声明在“gswteos-10.h”头文件中。在该文件中包含了很多参数的计算,对于每个参数的命名和计量单位,在官网给出的“TEOS-10_Manual.pdf”和“Getting_Started.pdf”文件中都可以查到,如下图所示,此处截取了一部分。在实际应用中,应尽量以此为标准规范参数命名,并保证使用变量计量单位正确。
注:在工程中引入头文件后,部分编译器可能会出现字符串赋值报错问题,请根据实际情况自行解决。
根据自己需要,查找所需函数。函数在线参考地址:参考地址
此处以Conservative Temperature(保守温度)为例,在头文件中找到该参数的计算函数。
以extern double gsw_ct_from_t(double sa, double t, double p);为例,在在线参考地址中找到该函数的使用说明,根据使用说明进行编程即可。
可以看到程序的计算结果与示例给出的结果相同。
总结
以上就是GSW库的下载、配置与使用。