求两个二维矩阵的root mean square(matlab程序)

function [rms,diffdata] = myRMS(udata, sdata)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This function computes the difference between the two data sets
% udata and sdata (udata and sdata are of two dimension) after  
% udata has been scaled to have the same mean value as the  sdata. 
% It then calculates the root mean square value of the difference .
%
% Make sure udata and sdata have the same size.
%
% The code is adapted from Bragi Sveinsson's mrFieldMap, function
% mrFieldError.
%
% http://white.stanford.edu/teach/index.php/2009_Bragi_Sveinsson
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
mysize = size(udata);

if (mean(mean(udata)) == 0)
    udata_i_scaled = udata;
else
    udata_i_scaled = mean(mean(sdata))/mean(mean(udata))*udata;
end
diffdata = sdata - udata_i_scaled;

if sum(sum(diffdata.^2))==0
    rms = 0;
else   
    rms = sqrt(1/(mysize(1)*mysize(2))*sum(sum(diffdata.^2)));
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值