2012-01-27 123 views
3

我有一个理论曲线,它是用数值计算的和一个实验曲线(更好地说是一个大量的实验点)。我需要计算这两条曲线之间的残差来检查最小二乘和方法的建模精度。这些矩阵(曲线)的大小不同。 MATLAB中有没有函数可以计算两个不同大小的矩阵的残差?如何计算不同大小的两条曲线(矩阵)的残差?

+4

您可以尝试对理论曲线进行插值,以使曲线具有相同的网格步长。 – Aabaz 2012-01-27 10:57:27

+0

好吧,这很明显。我真的应该尝试这样做。我为什么没有自己意识到呢?谢谢 :) – jacksonslsmg4 2012-01-27 13:46:07

回答

0

我想我会详细介绍一下Aabaz在遇到其他人可能会觉得这很有用的情况时所说的内容(虽然Aabaz的解释对于了解必要的数学知识的人来说可能是足够清晰的)。

首先,我假设你有一个二维图,但它应该不难推广到ND的情况。

基本上,对于您的实验数据(xi,yi)中的每个点,使用您的“理论曲线”来估计值xi的yi'。这可能就是Aabaz所说的,通过使网格步长相同,这样就可以使用曲线的公式,精确地在实验数据的x坐标值xi上内插点。

接下来,为了测量装配是否良好,您可以为例如使用测量的平方差的总和:

error = sum((yi' - yi)^2){where i range over all points in your exp. data}

当然其他错误指标以外最小二乘法可以用来估算数据满足你的模型(即你的曲线),但目前对于大多数应用中,最小二乘是最常见的。

希望这会有所帮助。