1. 物理海洋学中的海洋热学到底在研究什么
第一次接触“海洋热学”这个词,很多人会以为就是测测海水温度、画画等温线图。我带过几个刚进组的本科生,他们一开始也是这么理解的,直到让他们处理一批CTD数据,才发现事情远没有那么简单。海洋热学是物理海洋学里非常核心的一个分支,它关心的是海洋中热量的来源、分布、传输和变化规律,以及这些过程如何与大气、海冰、海底沉积物相互作用。说得再直白一点,海洋热学要回答的问题是:太阳辐射到海面的热量去了哪里?这些热量怎么从赤道跑到极地?为什么同纬度的东西两岸海水温度能差好几度?上层海洋的热量怎么和深层海水交换?这些问题听起来偏理论,但它们直接关系到台风强度预报、厄尔尼诺现象预测、海洋生态系统变化,甚至全球气候模式的可靠性。
我之所以想系统整理海洋热学的内容,是因为这个领域的知识散落在物理海洋学教材、海洋气象学讲义、卫星遥感论文和数值模式文档里,初学者很难找到一条清晰的线索。而且很多资料要么偏数学推导,要么偏观测描述,缺少把两者串起来的中间层。我打算用从业者的视角,把海洋热学里最常用的概念、公式、观测手段和数据处理方法梳理一遍,既讲清楚背后的物理逻辑,也给出可以直接上手的操作路径。不管你是海洋科学专业的学生,还是做气候模拟、海洋工程、渔业环境评估的从业者,只要需要跟海水温度场打交道,这些内容都能用得上。
海洋热学的研究对象可以从空间尺度上分成几类:大尺度的海盆尺度热量收支、中尺度的涡旋和锋面热输运、小尺度的湍流混合和边界层过程。时间尺度上则从日变化、季节变化一直延伸到年际和更长时间的气候变化。不同尺度对应不同的观测手段和分析方法,这也是为什么海洋热学既有理论推导,又高度依赖现场观测和卫星遥感。我在实际工作中最深的体会是,海洋热学不是一门“纸上谈兵”的学科,每一个参数背后都有具体的测量方式和误差范围,忽略这些细节,算出来的热收支可能完全不可信。
2. 海洋热收支的基本框架与核心参数
2.1 海面热收支方程的物理含义
海洋热收支的核心是海面热平衡方程,它描述的是海洋上层热量随时间的变化等于各种热通量的总和。这个方程看起来简单,但每一项都有复杂的物理过程和观测难题。基本形式可以写成:
dH/dt = Q_sw + Q_lw + Q_lat + Q_sen + Q_adv + Q_mix
其中H是海洋上层的热含量,Q_sw是短波辐射净通量,Q_lw是长波辐射净通量,Q_lat是潜热通量,Q_sen是感热通量,Q_adv是水平平流带来的热量变化,Q_mix是垂直混合引起的热量交换。这个方程是诊断海洋热状态的基础工具,也是数值模式中必须闭合的方程。
短波辐射是海洋最主要的熱量来源,太阳辐射穿过大气后,一部分被云反射,一部分被水汽和臭氧吸收,剩下的到达海面。到达海面的短波辐射并不是全部被表层吸收,而是按照指数衰减规律向下穿透。清洁大洋水的衰减系数大约在0.02到0.05每米之间,这意味着蓝光可以穿透到几十米甚至上百米深。近岸浑浊水的衰减系数可能高达0.5每米以上,热量几乎全部集中在表层几米内。这个差异对上层海洋的热结构影响很大,我在处理近岸数据时经常发现表层和十米深处的温度差能达到两三度,而大洋站位的温差可能只有零点几度。
长波辐射是海面向上发射的红外辐射,遵循斯特藩-玻尔兹曼定律,与海面温度的四次方成正比。但大气也会向下发射长波辐射,所以净长波辐射是两者之差。实际计算中通常用经验公式,比如Bignami公式或Clark公式,这些公式依赖海面温度、气温、水汽压和云量。潜热通量是海水蒸发带走的热量,感热通量是海气温差引起的热量交换,两者都依赖风速和交换系数。这些交换系数不是常数,而是随风速和大气稳定度变化,在弱风条件下误差尤其大。
2.2 热通量观测的几种主流手段
海洋热通量的观测手段主要有三类:船舶观测、浮标观测和卫星遥感。船舶观测是最传统的方式,用气象传感器测量气温、风速、湿度、气压和辐射,然后用块体公式计算热通量。这种方法的优点是直接、可靠,缺点是空间覆盖有限,而且船舶本身会干扰流场和温度场。我参与过一次走航观测,船体周围的海面温度比远处低零点几度,这就是船体扰动造成的偏差。
锚系浮标是长时间连续观测的主力,比如TAO/TRITON阵列在热带太平洋的布放,为ENSO研究提供了关键数据。浮标通常配备气象传感器和水温传感器,有些还带短波和长波辐射计。浮标数据的优势是时间序列长、位置固定,适合研究季节内到年际的变化。但浮标也有问题:传感器会生物附着,辐射计窗口会积盐,数据需要严格的质量控制。我处理过一批浮标数据,发现某些站位的短波辐射在上午总是偏低,后来查出来是辐射计被鸟粪遮挡了。
卫星遥感是唯一能提供全球覆盖的手段,但卫星测量的是海表皮温,也就是几微米厚的表层温度,和块体温度有差异。而且卫星不能直接测热通量,只能测辐射亮温、风速、水汽等参数,再通过块体公式反演。卫星数据的优势是空间分辨率高、时间序列长,缺点是受云影响大,近岸和极地反演误差较大。实际研究中通常把三种手段结合使用,用浮标数据校准卫星反演,用船舶数据验证浮标,形成互补。
2.3 热含量计算中的关键细节
热含量是海洋热学里最常用的积分量,定义为密度、比热容和温度异常在深度上的积分。计算热含量看起来简单,但有几个坑必须注意。首先是参考温度的选取,不同研究用的参考温度不一样,有的用0°C,有的用年平均气候态,有的用某个固定等温面。参考温度不同,算出来的热含量异常可能差很多。我在对比不同数据集时发现,同样一片海域,用0°C参考算出来的热含量趋势和用气候态参考算出来的趋势符号都可能相反。
其次是比热容的取值,海水比热容随温度和盐度变化,在0°C到30°C范围内大约从3.98到4.02焦耳每克每度。虽然变化不大,但在长时间序列的趋势分析中,忽略这个变化会引入系统性偏差。密度也是温度和盐度的函数,用常数密度近似在深海问题不大,但在上层海洋尤其是河口和极地海域,密度变化很大,必须用实测的温盐数据计算。
还有一个容易被忽略的问题是观测数据的垂直分辨率。CTD剖面通常在1米间隔采样,但历史数据里有很多是标准层数据,层间隔可能几十米甚至上百米。用粗分辨率数据计算热含量,会平滑掉很多小尺度信号,尤其是温跃层附近的梯度。我建议在做热含量分析时,尽量用原始高分辨率数据,如果只能用标准层数据,要注明插值方法,并评估插值误差。
3. 温度、盐度与密度的现场观测与数据处理
3.1 CTD剖面数据的获取与预处理
CTD是海洋热学最基础的观测工具,测量电导率、温度和深度,再换算成盐度和密度。现在的CTD通常和采水器阵列一起使用,可以在下降过程中连续测量,并在特定深度采水用于校准。我用的比较多的是Sea-Bird 911plus,配套的软件是Seasave和SBE Data Processing。整个流程从现场操作到最终数据产品,中间有很多细节决定数据质量。
现场操作时,CTD下降速度一般控制在1米每秒左右,太快会导致传感器响应滞后,太慢则船体晃动影响大。下降过程中船要保持稳定,最好迎风或者顺流,避免缆绳倾斜导致深度测量偏差。采水器要在下降时闭合,因为上升时传感器已经经过扰动。我见过有人为了省时间在上升时采水,结果盐度校准总是对不上,后来发现是上升时采水器周围的水已经被CTD本身搅动了。
预处理的第一步是原始数据转换,把电导率、温度、压力转换成物理量。然后要做传感器对齐,因为温度和电导率的响应时间不同,在梯度大的地方会出现尖峰。Sea-Bird的软件里有对齐功能,通常把电导率滞后温度一两个扫描周期。接着是热滞后校正,电导率传感器对温度变化的响应有延迟,需要用温度变化率来校正。这个步骤在温跃层附近特别重要,不做的话盐度会出现虚假的峰值。
3.2 盐度校准与误差控制
盐度校准是CTD数据处理里最关键的环节。现场采水样品用实验室盐度计测量,然后和CTD测量的盐度对比,计算偏差。通常每个航次要做几十个样品,覆盖不同深度和温度范围。校准系数一般是一个线性关系,但有时候也需要考虑温度和压力的依赖。我遇到过一批数据,表层盐度偏差很小,但深层偏差达到0.01以上,后来发现是电导率传感器的压力效应没有正确校正。
盐度误差对热学计算的影响是间接但重要的,因为密度依赖盐度,而热含量计算需要密度。0.01的盐度误差大约对应0.008千克每立方米的密度误差,在1000米深度上积分,热含量误差可能达到每平方米几十千焦。对于研究年际变化的项目,这个量级的误差已经不可忽略了。所以我在做热含量分析前,一定会检查盐度校准报告,确保偏差在0.002以内。
还有一个常见问题是生物附着,尤其是在长时间布放的潜标上。电导率传感器的探头如果被生物膜覆盖,测量值会偏低。处理方法是定期回收清洁,或者在数据后处理时用相邻站位的温盐关系做校正。我见过一个潜标连续工作了两年,回收后发现电导率探头几乎被藤壶包住了,数据后半段完全不可用。
3.3 密度与层结参数的计算
密度用UNESCO公式或者TEOS-10标准计算,TEOS-10是2010年以后推荐的标准,用绝对盐度和保守温度代替实用盐度和位温。TEOS-10的优点是热力学一致性更好,尤其是在深海和极地海域。但很多历史数据还是用旧标准,对比时要注意转换。我一般用Python的gsw库做计算,这个库实现了TEOS-10的全部函数,调用方便,结果可靠。
层结参数里最常用的是浮力频率N,定义为N² = -(g/ρ)(dρ/dz)。N的物理意义是海水稳定层结的振荡频率,N越大层结越稳定,垂直混合越难发生。计算N需要密度剖面,而密度剖面对盐度和温度的误差都很敏感。在温跃层附近,N可以达到每秒钟0.01到0.02弧度,而在深层海洋,N可能只有每秒钟0.001弧度。我在分析混合层深度时,通常用N²超过某个阈值(比如1e-5 s⁻²)作为温跃层的上界。
混合层深度是海洋热学里另一个关键参数,它决定了热量在垂直方向上的分布。计算混合层深度的方法有很多种,常用的有温度阈值法、密度阈值法和曲率法。温度阈值法简单,但受季节和区域影响大;密度阈值法物理意义更明确,但在近岸低盐海域可能失效。我一般用密度阈值法,阈值取0.03千克每立方米,这个值在开阔大洋比较稳定,但在强降水区域需要调整。
4. 海洋热学中的关键过程与机制分析
4.1 上层海洋的热量平衡与混合层演变
上层海洋的热量平衡决定了海表温度的变化,而海表温度又是海气相互作用的核心变量。混合层是上层海洋里温度、盐度和密度接近均匀的一层,它的深度随季节和天气变化。在热带海域,混合层深度通常在50到100米之间,季节变化不大;在中纬度海域,冬季混合层可以加深到几百米,夏季则只有十几米。这个季节循环是由风搅拌和浮力通量共同控制的。
风搅拌通过剪切不稳定产生湍流,把热量从表层向下输送到混合层底部。浮力通量则通过加热或冷却改变表层水的密度,影响层结稳定性。夏季海面加热,表层变暖变轻,层结稳定,混合层浅;冬季海面冷却,表层变冷变重,对流不稳定,混合层深。这个机制听起来简单,但实际观测中混合层深度的变化往往比理论预测复杂,因为降水和水平平流也会改变表层浮力。
我在分析一次中纬度海区的秋季数据时,发现混合层深度在两天内从30米加深到80米,但海面热通量并没有明显变化。后来查了风场数据,发现那两天有一次强风事件,风速达到15米每秒,风搅拌是混合层加深的主要原因。这个例子说明,在分析混合层演变时,不能只看热通量,风场和降水同样重要。
4.2 中尺度涡旋对热输运的贡献
中尺度涡旋是海洋里普遍存在的现象,空间尺度在几十到几百公里,时间尺度在几周到几个月。涡旋通过旋转流场把热量从一处输送到另一处,对海洋热收支的贡献不可忽略。在湾流和黑潮等西边界流区域,涡旋的热输运甚至和平均流相当。我做过一次涡旋热输运的估算,用的是卫星高度计数据和CTD剖面,发现一个直径200公里的暖涡,在三个月里把大约10的19次方焦耳的热量从副热带输送到中纬度。
涡旋的热输运计算需要涡旋的流场和温度场,流场可以从卫星高度计的地转流反演,温度场可以从Argo剖面或者卫星海表温度获取。难点在于涡旋的识别和追踪,因为涡旋会变形、合并、分裂。常用的方法有Okubo-Weiss参数法和海面高度异常闭合等值线法。我一般用海面高度异常法,因为它直观,而且和卫星数据直接对应。但这个方法在涡旋变形严重时会失效,需要结合流场矢量做人工判断。
涡旋对热含量的影响还体现在涡旋引起的垂直运动上。暖涡通常伴随下沉运动,把表层暖水向下压,冷涡则伴随上升运动,把深层冷水向上带。这种垂直运动改变了局地热含量,但不一定改变海盆尺度的热收支。我在做区域热收支时,会把涡旋的平流和垂直运动分开处理,避免重复计算。
4.3 海洋热浪与冷事件的物理机制
海洋热浪是近年来备受关注的现象,定义为海表温度持续异常偏高的时段。海洋热浪对珊瑚礁、渔业和海洋生态系统有严重影响,比如2016年大堡礁的珊瑚白化事件就和海洋热浪直接相关。海洋热浪的物理机制主要有几种:海面热通量异常、水平平流异常、垂直混合异常和这些因素的组合。在有些区域,海洋热浪主要由局地海面加热驱动,比如地中海;在另一些区域,平流和混合的贡献更大,比如东北太平洋。
我在分析一次东北太平洋海洋热浪时,发现海面热通量异常只能解释三分之一的海温异常,剩下的部分来自风减弱导致的垂直混合减少和暖平流增强。这个案例说明,海洋热浪的机制是多样的,不能一概而论。诊断海洋热浪需要做热收支分析,把海温变化分解成海面通量、平流和混合的贡献。这个分解可以用混合层热收支方程做,但需要高质量的流场和热通量数据。
海洋冷事件的研究相对少一些,但同样重要。冷事件通常和强风、上升流或者冷平流有关。我在一次冬季调查中遇到过海表温度在一天内下降4°C的情况,原因是强冷空气过境,海面失热加上风搅拌把深层冷水带到表层。这种事件对海洋生物的冲击很大,可能导致鱼类死亡或者迁移。
5. 数据处理工具与实操流程
5.1 Python在海洋热学数据处理中的应用
Python现在是海洋数据处理的主流工具,生态里有numpy、scipy、pandas、xarray、matplotlib这些基础库,还有专门做海洋计算的gsw、seawater、oceano等。我自己的工作流基本是:用xarray读NetCDF数据,用gsw做热力学计算,用pandas做时间序列分析,用matplotlib画图。这套组合灵活、开源、社区支持好,比传统的Matlab和Ferret更适合做可重复研究。
读NetCDF数据用xarray特别方便,它支持标签索引,不用记维度顺序。比如要读一个CTD剖面的温度和盐度,直接写ds['temp']和ds['salt']就行,xarray会自动对齐坐标。gsw库提供了TEOS-10的全部函数,比如gsw.SA_from_SP把实用盐度转成绝对盐度,gsw.CT_from_t把温度转成保守温度,gsw.rho算密度。这些函数的输入输出都是numpy数组,可以批量处理。
做热含量计算时,我一般写一个函数,输入温度和盐度剖面,输出热含量。函数里先算密度和比热容,然后做垂直积分。积分用梯形法则,scipy的trapz函数可以直接用。要注意的是深度方向,CTD数据的压力要转成深度,用gsw.z_from_p函数。积分的时候从海面到参考深度,参考深度根据研究问题选,研究上层海洋热含量一般用混合层深度或者固定深度比如300米。
5.2 卫星海表温度数据的处理要点
卫星海表温度是海洋热学里用得最多的数据之一,常用的产品有NOAA的AVHRR、NASA的MODIS和Aqua、以及多传感器融合的OISST。OISST是日平均、0.25度分辨率的全球产品,从1981年到现在,适合做长时间序列分析。但OISST是皮温,和块体温度有差异,在夜间差异小,白天差异大,因为白天有日暖层。
处理卫星海表温度时,云检测是关键。AVHRR和MODIS都有云掩膜产品,但云边缘的像元经常被误判。我一般用多天合成来减少云的影响,比如用3天或者7天的中值合成。OISST本身已经做了云填补和偏差校正,用起来方便,但要注意它的空间分辨率比较粗,近岸和锋面区域可能不够用。
卫星海表温度和现场观测的对比是必须做的,因为卫星反演有区域性和季节性偏差。我一般用浮标数据做匹配,时间和空间窗口取6小时和25公里。匹配后算偏差和均方根误差,如果偏差超过0.5°C,就要考虑做区域校正。校正方法有简单的偏差扣除,也有复杂的统计回归,看数据质量和研究需求。
5.3 Argo数据在热含量分析中的使用
Argo浮标阵列是2000年以后海洋观测的革命性进展,全球有近4000个浮标,每10天提供一个0到2000米的温盐剖面。Argo数据对热含量分析特别有价值,因为它覆盖全球、时间连续、深度范围大。我用Argo数据做过全球海洋热含量的趋势分析,发现2005年到2020年上层2000米的热含量以每平方米每年0.5到1.0焦耳的速度增加,这个趋势和气候模式的预测一致。
Argo数据的处理有几个关键步骤。首先是质量控制,Argo数据中心提供了延迟模式数据,经过了严格的质量控制,包括盐度校准、压力校正和实时质量标记。我一般用延迟模式数据,虽然滞后几个月,但质量可靠。其次是网格化,Argo剖面是散点数据,做区域平均需要插值到规则网格。常用的方法有最优插值、客观分析和简单分箱。我一般用分箱法,把研究区域分成1度乘1度的格子,每个格子里的剖面做平均,然后算热含量。
Argo数据也有局限,比如在边缘海和极地海域覆盖不足,在2000米以下没有数据。做全深度热含量分析时,需要用气候态数据填补深层。我一般用WOA18的气候态数据补2000米以下的部分,但要注意这会平滑掉深层的变化信号。对于研究上层海洋热含量的项目,Argo数据已经足够好了。
6. 常见问题与排查技巧实录
6.1 热通量计算中的异常值排查
热通量计算最容易出问题的地方是块体公式的输入参数。风速、气温、湿度和海表温度任何一个有异常,热通量就会离谱。我遇到过一批数据,潜热通量在某些天达到每平方米500瓦以上,查了半天发现是湿度传感器在雨天饱和了,相对湿度一直是100%,导致海气湿度差算出来偏大。后来加了降雨标记,把雨天数据剔除了。
另一个常见问题是海表温度的日变化。块体公式用的海表温度通常是日平均或者某个时刻的,但实际海表温度有日变化,白天可以比夜间高1到2度。如果热通量计算用的是白天温度,感热通量会偏大。我一般用日平均海表温度,或者用卫星夜间海表温度,减少日暖层的影响。
还有风速的高度问题。块体公式的风速是10米高度的,但浮标的风速传感器可能在3到4米高度,需要转换。转换用对数风廓线公式,需要粗糙度长度,而粗糙度长度又依赖风速和浪高。这个转换在弱风条件下误差大,我一般用经验公式做近似,并在结果里注明不确定性。
6.2 热含量趋势分析中的陷阱
热含量趋势分析看起来简单,做起来坑很多。第一个坑是数据的不连续性,比如Argo之前和之后的数据来源不同,直接拼接会引入虚假趋势。我一般把Argo之前和之后分开分析,或者用交叉校准的方法做统一。第二个坑是空间覆盖的变化,早期观测稀疏,后期密集,区域平均热含量会被采样变化影响。解决方法是用固定网格做平均,或者用最优插值填补空缺。
第三个坑是参考温度的选择,前面提过,不同参考温度算出来的趋势可能不同。我在做趋势分析时,会同时用几个参考温度算,看趋势是否稳健。如果趋势对参考温度敏感,说明结果不可靠。第四个坑是统计显著性,海洋热含量有很强的年际和年代际变化,短时间序列的趋势可能不显著。我一般用20年以上的数据做趋势,并用蒙特卡洛方法估计置信区间。
6.3 现场观测中的常见故障与应对
现场观测的故障五花八门,我挑几个典型的说。CTD缆绳倾斜是常见问题,尤其是在深水站位,船漂移会导致CTD偏离垂直剖面。倾斜超过15度,深度和温度的关系就会失真。应对方法是调整船位,保持迎风或者顺流,必要时用声学多普勒流速剖面仪监测缆绳角度。
采水器闭合失败也经常发生,尤其是老式采水器,弹簧疲劳或者密封圈老化都会导致漏水。我一般在下放前检查每个采水器的闭合机构,带备用弹簧和密封圈。如果发现某个深度样品盐度异常,先检查采水器是否闭合,再检查样品瓶是否污染。
传感器漂移是长时间布放的主要问题,电导率传感器和温度传感器都会漂。应对方法是定期回收校准,或者在数据后处理时用相邻站位的温盐关系做校正。我见过一个潜标的温度传感器在两年里漂了0.05度,虽然不大,但对热含量趋势分析有影响。后来用航次CTD数据做了线性校正,把漂移去掉了。
6.4 常见问题速查表
| 问题现象 | 可能原因 | 排查方法 | 解决措施 |
|---|---|---|---|
| 潜热通量异常偏高 | 湿度传感器饱和 | 检查相对湿度是否持续100% | 剔除降雨时段数据 |
| 盐度剖面出现尖峰 | 电导率与温度未对齐 | 检查梯度大处的盐度 | 做传感器对齐和热滞后校正 |
| 热含量趋势不显著 | 年际变化掩盖趋势 | 计算置信区间 | 延长序列或做滤波 |
| 混合层深度异常浅 | 降水导致表层低盐 | 检查盐度剖面 | 用密度阈值法并调整阈值 |
| 卫星海表温度偏差大 | 云污染或日暖层 | 对比浮标数据 | 用多天合成或夜间数据 |
| CTD深度偏差 | 缆绳倾斜 | 检查缆绳角度 | 调整船位或做倾斜校正 |
7. 海洋热学在气候与生态中的应用延伸
海洋热学不只是理论,它在很多实际领域有直接应用。气候预测里,海洋热含量是比海表温度更稳健的指标,因为海表温度受天气影响大,而热含量积分了上层海洋,记忆更长。我在做季节预测时,用热带太平洋的热含量异常预测ENSO,提前量比用海表温度多两三个月。这个技巧在业务预测里已经用了很多年,效果稳定。
渔业海洋学里,海洋热学用来研究鱼类的栖息地变化。很多鱼类对温度敏感,海洋热浪会导致鱼类迁移或者死亡。我参与过一个鳕鱼栖息地评估项目,用热含量和混合层深度做栖息地适宜性指数,发现变暖背景下鳕鱼的适宜栖息地向北移动了大约100公里。这个结果对渔业管理有直接参考价值。
海洋工程里,热含量影响海水密度和声速,进而影响水下声传播和结构设计。比如海底管道设计要考虑底层水温,因为低温会影响材料韧性。我做过一次南海北部底层水温分析,发现冬季底层水温可以低到15度以下,比夏季低10度以上,这个差异在管道设计中必须考虑。
珊瑚礁研究里,海洋热浪是珊瑚白化的主要驱动因素。 Degree Heating Week是常用的白化预警指标,定义为海表温度超过最大月平均温度1度以上的累积周数。这个指标的计算依赖卫星海表温度,而卫星海表温度的准确性直接影响预警效果。我在做珊瑚礁监测时,会把卫星数据和现场温度记录仪对比,确保预警指标可靠。
海洋热学的内容还有很多,比如极地海洋的热收支、海底热液对深海热含量的贡献、海洋内部混合的热效应等等。我打算持续更新这个系列,把每个专题都展开讲透。如果你在实操中遇到具体问题,欢迎一起讨论,很多技巧都是在解决实际问题中摸索出来的。