xcorr3文档

xcorr3函数给出三维时空数据集的网格单元与参考时间序列之间的相关系数图。

参见:corr3xcov

返回气候数据工具目录

内容

语法

r = xcorr3 (ref) r = xcorr3(…,“去趋势”)r = xcorr3(…,maxlag, maxlag) r = xcorr3(…,“面具”,面具)[r,征求,滞后]= xcorr3(…)

描述

r = xcorr3 (ref)给出二维相关图r,它的尺寸对应于的尺寸1和尺寸2一个.三维矩阵一个假设有空间维度1和3,可以对应x和y, lat和lon, lon和lat等。第三维度一个假设对应于时间。数组裁判是一个时间序列的参考信号吗一个.的长度裁判必须符合第三维度的一个

r = xcorr3(…,“去趋势”)在计算相关性之前,从每个时间序列中去除平均值和线性趋势。建议用于任何类型的分析,其中有数据值一个或者值的范围裁判都不是以0为中心的。

r = xcorr3(…,maxlag, maxlag)将最大延迟指定为时间步长的整数标量数。如果您指定maxlag,则返回的互相关序列范围为-maxlagmaxlag.默认的maxlag是N-1个时间步长。

r = xcorr3(…,“面具”,面具)只对掩码中尺寸与a的前两个(空间)尺寸对应的真实网格单元格进行分析一个很大。默认情况下,任何价值一个将默认掩码中相应的网格单元格设置为

(r,征求,滞后)= xcorr3(…)返回零相位相关系数r,最大相关系数征求,最大相关值对应的时间滞后。一个负滞后值表示本地时间序列发生参考信号。一个积极的滞后指示局部现象引出参考信号。

例1:四种人工信号的比较

考虑这个简单的2x2网格,包含10,000个时间步骤。你想看看哪个网格单元格随着一些参考信号而随时间变化y

时间矢量:t = 1:1;%和一些参考信号:y =信德(t);%建立:一个=南(2,2,10000);(1 1:) = 2 * y;% 2x ref信号(1、2:)=信德(t-43);滞后43步的% ref(2, 1:) = randn(大小(t));%高斯噪声(2, 2,:) = - y;完全不相

很难想象那四个网格单元格一个希望这对你有所帮助:这是一种空间视角一个

A = [2x ref signal ref with lag of -43 time steps;高斯噪声完全异相]

现在我们可以看到每个网格单元格一个随(或不随)变化y

(r0、征求滞后)= xcorr3 (A, y);

零相位相关是这样的:

r0
R0 = 1.00 0.73 -0.01 -1.00

这正好告诉了我们已经知道的。的左上角网格单元格一个有两个倍的值y,所以它与y是一个完美的1.0000.的右下角网格单元格一个我们定义了一个时间序列吗可能是,所以它与y-1.0000.的左下角一个只包含噪声,所以它不是很好相关y在所有。最棘手的是右上角的网格单元格一个,它的信号和y,但时间偏移了43个时间步长。这里有一个片段y信德(t-43)看起来像:

情节(t (1:400), y (1:400),“b”)举行情节(t(1:400)信德(t (1:400) -43)“r”)包含(“时间”)传说(“参考信号y”“y有43步滞后”

在上面的情节中,很明显y还有滞后版本的y通常是一起上升或下降,但有时时间滞后意味着它们不是完全相关的,因此,0.73如果我们不考虑时间偏移。然而,你也可以看到,如果你将其中一个信号平移43个时间步,这两个信号就会完全相关。事实上,如果我们看一下最大相关系数,这就很清楚了

征求
Rmax = 1.00 1.00 0.02 0.98

我们看到,如果我们平移一个值在时间附近,右上角网格单元格为一个匹配相关系数为1(或接近1)的参考时间序列,表示完全匹配。信号与这些滞后最吻合:

滞后
滞后= 0 -43.00 -617.00 -180.00

再一次,这告诉我们我们已经知道的。的左上方网格单元格一个与参考时间序列完美匹配,零滞后;我们故意在右上角的网格单元上应用了43个时间步长滞后一个;左下角的网格单元与参考信号的相关性并不好,因此滞后值没有意义,右下角的网格单元为一个用180时间步距匹配参考信号(因为在本例中,偏移方便地对应于度数)。

例2:海洋表面温度

上面的例子是为了说明背后的理论xcorr3有效,但它没有捕捉到你可以通过应用得到的时空模式的洞察力xcorr3真实的数据。让我们来看看一个重新分析的海平面温度样本数据集:

负载pacific_sst纬度t
名称大小字节类属性lat 60x1 480双lon 55x1 440双t 802x1 6416双

示例数据集包含风场矩阵,其中有下列决议:金宝搏官方网站

的意思(diff (lat)) (diff(朗))的意思是(diff (t))
Ans = -2.00 Ans = 2.00 Ans = 30.44

也就是说,风场是一个2x2度网格,具有月时间分辨率。

我有一个假设,海面温度随季节呈正弦变化。为了将海面温度与正弦曲线进行比较,首先创建一个与一年中的月份相对应的参考正弦曲线:

[~、月~]= datevec (t);ref =罪((月+ 1)*π/ 6);情节(t, ref) xlim ([datenum (1990年1月1日的) datenum (1995年1月1日的)))箱datetick (“x”“keeplimits”)标题“参考时间序列”

参考信号在每年的2月有一个最大值。我的假设是,南半球的海面温度应该与参考信号正相关,即南半球的海面温度应该在2月份达到最大值,在8月份达到最小值。北半球应该呈现出完全相反的模式,最大值在每年8月,最小值在每年2月。

让我们来看看原始海面温度数据和参考正弦信号之间的相关性。(我使用以下imagescn创建一个显示亮度图像绘图,其中NaN值是透明的,但您可以使用显示亮度图像pcolor如果你喜欢。我也用acmoceancolormap (Thyng et al., 2016),它是发散的,但在感知上是一致的。

ref r0 = xcorr3 (sst);图imagescn(经度、纬度、r0)轴xy图像cb = colorbar;ylabel (cb、“零相位相关”([-1 1]) cmocean平衡

在上面的地图中,我们看到海洋表面温度似乎只有与参考正弦信号相关但是我们疏忽了!我们忘记去掉均值了风场数据集,当然与正弦信号的相关性很弱。这是一张平均海面温度的地图,它污染了上面的分析:

图imagescn(经度,纬度,意味着(sst, 3))轴xy图像cb = colorbar;ylabel (cb、的平均温度) cmocean

使用前xcorr3您可以手动删除均值,如果您愿意,或者您可以简单地使用“去趋势”选项,它将为您移除平均值。的“去趋势”选项还去除了长期(全球变暖)趋势,这是很方便的,因为当平均和长期趋势被去除时,剩下的就是季节周期和年际变化。

我们来看看海平面的温度异常(而不是绝对值)与我们的参考正弦曲线比较:

(r0、征求滞后)= xcorr3(海温,裁判,“去趋势”);图imagescn(经度、纬度、r0)轴xy图像cb = colorbar;ylabel (cb、“零相位相关”([-1 1]) cmocean平衡

哇!这是一些明确的证据,表明海洋表面温度似乎随季节变化。正如预期的那样,南半球与参考正弦曲线呈正相关,这意味着南半球海面温度在2月左右达到最高,在8月左右达到最低。北半球和南半球几乎完全相反。在赤道附近,与参考正弦信号的相关性很小。但也许我们为参考信号选择的相位与数据并不完全匹配。如果我们通过时间移动参考信号,那么每个网格单元与参考正弦信号的最佳匹配是什么?

图imagescn(经度、纬度、征求)轴xy图像cb = colorbar;ylabel (cb、“最大相关性”([-1 1]) cmocean平衡

上面的地图告诉我们,几乎整个太平洋都有一些正弦变异性。我们可以通过观察滞后来找到最佳匹配正弦信号的相位:

图imagescn(经度、纬度、滞后)轴xy图像cb = colorbar;ylabel (cb、的滞后(个月)

上面的地图似乎是垃圾。靠近(180W,4S)的网格单元需要391个月(32年)的偏移才能得到与正弦波的最佳匹配?再看一看最大相关图,你会发现(180W,4S)与正弦曲线的相关性从来都不是很好——它的海面温度似乎没有季节周期。假设负6个月的偏移量在数学上等于正6个月的偏移量,我们实际上应该将最大滞后限制为6个时间步长,这将使滞后量保持在+/- 6个月以内:

(r0、征求滞后)= xcorr3(海温,裁判,“maxlags”6“去趋势”);图imagescn(经度、纬度、滞后)轴xy图像cb = colorbar;ylabel (cb、的滞后(个月)([-6 6]阶段

上面的地图告诉我们,阿拉斯加海岸附近的最高温度出现在与智利海岸附近的最高温度相差六个月左右。

上面的地图使用了cmocean阶段因为在这种情况下,负6个月的延迟与正6个月的延迟是一样的,因此我们需要一个在顶部和底部相同的颜色映射。

为了好玩,我们把最大相关性叠加起来征求就像等高线和一些国家的怎么样边界背景:

持有(C、h) =轮廓(经度、纬度、做,“颜色”0.2 * (1 1 1));clabel (C、h、“颜色”rgb (深灰色的),“字形大小”8“labelspacing”, 300);边界(“国家”“facecolor”rgb (“晒黑”))

作者信息

xcorr3功能和辅助文档由金宝app乍得a。格林德克萨斯大学地球物理研究所(UTIG), 2017年2月。