PDA

查看完整版本 : [MATLAB混合编程] 能不能帮我把下面的代码编译成DLL VB.net 用,先谢谢


WTPWEB
2012-05-29, 22:38
用最小二乘法计算 平面度误差,本人小白^10
我的需求是:我测量N个点,最大200点.
要计算平面度误差.
哪位大侠能够帮帮我.
可以算费用.
下面的代码可能错误.
大侠可以改正,也可以另写.
n = length( x) ; m = length( y) ;
zs = 0; xzs = 0; xs = 0; x2s = 0; yzs = 0; ys = 0; y2s = 0;
for k = 1: n
xs = xs + x( 1 + ( k - 1) * m) ;
x2s = x2s + x( 1 + ( k - 1) * m) ^2;
end
for k = 1: m
ys = ys + y( k) ;
y2s = y2s + y( k) ^2;
end
for h = 1: m* n
zs = zs + z( h) ;
xzs = xzs + x( h) * z( h) ;
yzs = yzs + y( h) * z( h) ;
end
p = ( xzs - ( zs* xs /n) ) /( m* x2s - ( m/n) * xs^2) ;
q = ( yzs - ( zs* ys /n) ) /( m* y2s - ( m/n) * ys^2) ;
c = zs /( n* m) - p* xs /n - q* ys /m;
for k = 1: n* m
zz( k) = p* x( k) + q* y( k) + c;
D( k) = zz( k) - z( k) ;
end
Dmax = max( D) ; Dmin = min( D) ;
errorzxerc = Dmax - Dmin