如何用matlab计算不确定度,基于MATLAB的不确定度合成

当测量结果是一个或多个直接测量量的函数时,即有y=f(x1,x2,…,xn)的函数关系,直接测量量的不确定度u(xi)(i=1,2,…,n)以一定规律传递给测量结果,一般用下述公式进行不确定度合成u2c=ni=1(fxi)2u2(xi)+2n-1i=1nj=i+1fxifxjr(xi,xj)u(xi)u(xj)(1)其中,r(xi,xj)为xi、xj的相关系数;uc为合成标准不确定度[1]。当各直接测量量相互独立,即r(xi,xj)=0,并且在偏导数(灵敏系数)易获得的情况下,可以由(1)式很容易计算合成标准不确定度uc。但当各直接测量量不相互独立时,需要知道各量间的相关系数,才能应用不确定度合成公式,而相关系数的获得相当困难[2],很多情况下根本无法得到,因而也就无法按(1)式进行不确定度的合成;当偏导数不易获得时,也无法由(1)式进行不确定度合成;而且当由于各种原因不易获得一些xi的大量测量值,而只能得到xi单次测量值,或者根据相关信息通过各种方法(如B类评定)粗略估计其值,及其误差的分布类型和相应参数时,此时用(1)式也无法进行不确定度合成。本文利用MATLAB进行随机模拟,较好地解决了上述存在的问题。MATLAB[3,4]语言是一种面向科学与工程计算的高级语言,可以用数学形式的语言编写程序。该语言主要用于矩阵运算,同时在数据分析、自动控制、数字信号处理及绘图等方面也有强大的功能。MAT-LAB提供了23种随机变量分布类型的随机数发生器,如正态分布、对数分布、对数正态分布,泊松分布以及威布尔分布等,可直接产生大量的变量随机数。设被测量Y的估计值y是根据n个其它量的测得值x1,x2,…,xn和相应的函数关系式计算求得的,且有函数关系式y=f(x1,x2,…,xn)。对一些不易测量的xi,由单次测量得到或根据相关信息估计其值为xi,其误差的分布函数为F(xi)。用MATLAB的随机数发生器,分别产生服从分布F(xi)的m个xi1,xi2,…,xim随机数,那么xi的值为xi+xi1,xi+xi2,…,xi+xim,然后根据公式y=f(x1,x2,…,xn)得到y的m个样本,记为y1,y2,…,ym,根据y的m个样本,估计其分布类型,计算出y的均值和方差,进而获得被测量Y的合成标准不确定度。由于该方法使用的是测量值和仿真数据,而不是利用平均值、标准差及自由度,因此不要求计算灵敏系数,即无需评估模型对于输入量的偏导数,因而避免了(1)式中的一些近似,该方法也不需要计算合成不确定度的自由度。它适用于各直接测量的量相关或不相关的情况,测量模型很难或不便于进行偏导数的情况,及有些xi不易获得的情况,且可以使用MATLAB编写程序计算,从而使不确定度的合成简单、方便。具体步骤如下:(1)对那些不易获得足够测量值的量,根据相关信息,由单次测量或通过各种方法估计其值xi及其误差所服从的分布F(xi)和分布参数,一般情况下认为测量误差服从正态分布。(2)用MATLAB的随机数发生器,分别产生服从分布F(xi)的m个随机数xi1,xi2,…,xim。(3)根据每组随机数xi+xi1,xi+xi2,…,xi+xim及其它xi的测量值,按式y=f(x1,x2,…,xn)计算相应的被测量的估计值yi(i=1,2,…,m),从而获得被测量估计值y的m个样本y1,y2,…,ym。(4)根据粗大误差判别准则,剔除掉y的m个样本中的粗大误差,然后估计被测量的分布类型及其均值y和方差y。(5)由xi和其它xi的测量值的平均值,计算y的均值y,由y的直方图或K-S检验确定y所服从的

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值