我一直听人说SVD,您能为我简单介绍一下吗?

当然可以。


作者:Peter Avitabile   翻译:倪昊、焦吉祥(德国m+p国际公司)

        我很奇怪你没有早一些来问这个问题。SVD,也就是奇异值分解,可能是最重要的线性代数工具之一,今天我们用它来解决很多结构动力学问题。首先,先介绍一下SVD的数学表达式,以及它的一些变体形式,接着描述一下在试验模态分析中它通常用在什么地方。当然,我会尽量介绍SVD的使用,而不是列出详尽的数学推导。

        首先,我们需要知道从这儿开始就要跟矩阵打交道了。(我知道当我们说到矩阵的时候,你们都会颤抖——但是正如我之前所说“矩阵是你的朋友!”)假设我们有某个矩阵[A],它是一个n×n的方阵。SVD的基本方程是

这个表达式看上去比较简单,但将某些项展开来看一看SVD的作用


       将其展开得到


       这真让人难以置信,因为这意味着矩阵A是由一组向量和奇异值构成的。

       我们也可以说矩阵A的一部分是由其它矩阵组成的,它们可以用一个向量和其相应的特征值来简单描述。所以SVD能够确定矩阵组成中的主要成分,这也意味着可以确定矩阵的秩。我们试着给出一些数值来看看这到底是什么意思。

        我们以一个简单的向量和特征值开始来说明SVD的基本方程。定义向量、奇异值如下


        将这些因子简单相乘,可得到矩阵A


        这非常简单,因为我从一个向量开始,接着构成了一个矩阵。这个矩阵显然是一个大小为3×3的矩阵,但它的秩是多少呢?观察矩阵的各个行,能很快发现第2、3行与第1行线性相关。这意味着尽管得到了一个3×3的矩阵,但构成这个矩阵的只有一个线性独立成分。(当然,我们知道这是正确的,因为我们是根据一个向量来构成的矩阵)。我们就可以说这个矩阵的秩是1——因为只有一个线性独立成分构成这个矩阵。

        现在考虑另外一个简单的向量和特征值,即


        将这些因子简单相乘,得到矩阵A


       同样,对于这个矩阵我可以做出跟之前的第1个矩阵完全相同的解释。这个矩阵的秩是1,因为它也是根据一个线性独立成分构成的。

        现在,考虑一个一般形式的矩阵,如


        这个矩阵是3×3矩阵,但我并不清楚它的秩是多少。确定秩的最简单的方法是对矩阵进行SVD,最后的分解结果是


        所以SVD的优美之处在于,我可以利用组成矩阵的线性独立的成分来写出矩阵A。这可以利用求和的形式来表示


       所以我认为这有助于解释SVD的基本原理。但是现在我需要讨论几个SVD的常见应用。(SVD有很多不同的应用,但这里仅讨论与试验测试相关的一些应用)

       SVD在试验模态测试中的一个应用是MIMO数据的采集。对于所有的MIMO激振器,尽管数据采集系统可以生成互不相关的力信号(线性不相关),但每个激振器实际的激振力或许并不能完全不相关,这是由于激振器与结构之间存在相互作用。

        因此我们需要检查输入谱之间的线性不相关程度。在MIMO数据采集的过程中,激振器的Gxx可以用来完成主成分分析。这项技术利用SVD将Gxx矩阵进行分解,然后在频域上画出每个输入对应的奇异值。如果激振器完全线性无关,那么在每一个独立输入的频率上都有一个明显的奇异值,如图1所示。


图1 两个激振器MIMO数据的SVD分解

        另一个应用是用于模态参数估计。可以利用SVD将不同参考点得到的FRF矩阵进行分解,以确定系统的根(或模态)在什么位置。这种分解是CMIF模态参数估计方法的基础。SVD得到的奇异值图可以提供用于指示系统模态所在的位置的示意图。图2展示了一个有重根的系统的典型示意图。


图2

       尽管SVD还有很多其他应用,这里不能详尽介绍,但我希望这几个例子能有助于你更好地理解这项技术。如果你有关于模态分析的任何其他问题,欢迎垂询。






以上内容为德国m+p国际公司本期的newsletter,如有任何意见与建议欢迎与我们联系。

如需了解更多信息,欢迎与我们联系。
-------------------------------------------------------------------------------------------
德国m+p国际公司北京代表处 
地址:北京海淀区学清路38号金码大厦B1006-1007室(邮编:100083) 
电话:010-82838698/82838956
传真:010-82838998
邮箱:sales.cn@mpihome.com
m+p international listens to customers