【发布时间】:2011-08-05 11:22:54
【问题描述】:
我有两个浮点数向量,它们包含相同的值直到一个小错误,但不一定以相同的方式排序;例如,A=rand(10);a=eig(A);b=eig(A+1e-10);(请记住,eig 输出的特征值没有指定的顺序)。
我需要找到与对应元素匹配的排列 p,即p=mysterious_function(a,b),使得 norm(a-b(p)) 很小。
是否有一个现有的函数可以以理智和安全的方式执行此操作,还是我真的需要推出自己的缓慢且错误检查不佳的实现?
我现在只需要这个用于测试目的,不需要过度优化。请注意,涉及使用sort 对两个向量进行排序的解决方案在包含复杂等模参数的向量的情况下会失败,例如eig() 的典型输出。
【问题讨论】:
标签: matlab variable-assignment