Matlab 版 (精华区)
发信人: zjliu (秋天的萝卜), 信区: Matlab
标 题: [合集]高手帮忙看一下了!!!
发信站: 哈工大紫丁香 (2004年03月02日21:54:49 星期二), 站内信件
────────────────────────────────────────
mingming (小坏妞) 于 Sun Feb 29 10:17:34 2004 说道:
我用subs代入数值得到的是这样的式子,而我要的是计算的结果,该怎么办????
D =
[ cos(3076802149823721/2251799813685248)]
[ 4302453056439517/4503599627370496*cos(3076802149823721/2251799813685248)-53
23618770401843/18014398509481984*sin(3076802149823721/2251799813685248)]
[ 7433962335525653/9007199254740992*cos(3076802149823721/2251799813685248)-5
085847265558873/9007199254740992*sin(3076802149823721/2251799813685248)]
[ 5598964842947101/9007199254740992*cos(3076802149823721/2251799813685248)
-110243461822113/140737488355328*sin(3076802149823721/2251799813685248)]
[ 1631914248035957/4503599627370496*cos(3076802149823721/2251799813685248)-2
098765440128369/2251799813685248*sin(3076802149823721/2251799813685248)]
[ 5097152561150375/72057594037927936*cos(3076802149823721/2251799813685248)-8
984636099947915/9007199254740992*sin(3076802149823721/2251799813685248)]
────────────────────────────────────────
zjliu (秋天的萝卜) 于 2004年02月29日10:20:23 星期天 说道:
你还是贴一下相应的程序,这样方便些
────────────────────────────────────────
mingming (小坏妞) 于 Sun Feb 29 14:34:32 2004 说道:
好的,就是长一些。
function calibrate_errors
N=45; %样本点数+2.368);
M=23;
w=0.3;
for i=1:N
xi(i)=2.215*cos(w*(i-1)+1.368);
xq(i)=2.001*sin(w*(i-1)+1.155);
end
yi=xi+wgn(1,N,0.05,'dBm');
yq=xq+wgn(1,N,0.05,'dBm');
% %%%%%%%%%%%%%%%%%%%%%%%%%%%Ac,As%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
k=ones(M,2);
syms A;
syms u;
syms As;
for i=1:N
f(i)=(cos(w*(i-1))*A*cos(u)-sin(w*(i-1))*A*sin(u));
end
for j=1:M-1 %%%%%%%%%jacobi
an
D=jacobian(f,[A;u]);
D=subs(D,{A,u},{k(j,1),k(j,2)});
fr=subs(f,{A,u},{k(j,1),k(j,2)});
I=[k(j,1);k(j,2)]+inv(D'*D)*D'*(yi'-fr');
k(j+1,1)=I(1);
k(j+1,2)=I(2);
end
Amean=0;
umean=0;
Amean=mean(k(:,1));
umean=mean(k(:,2));
D=jacobian(f,[A]);
D=subs(D,{A,u},{k(M,1),k(M,2)});
tc=0;
mse=(yi'-fr');
for i=1:N
tc=tc+mse(i)^2
end
tc=tc/(N-2)
Avar=sqrt(tc*inv(D'*D))+0.0;
%%%%%%%%%%%%%%水平为95%,
w=jacobian(f,[u]);
w=subs(f,{A,u},{k(M,1),k(M,2)});
uvar=sqrt(tc*inv(w*w'));
────────────────────────────────────────
zjliu (秋天的萝卜) 于 2004年02月29日14:55:16 星期天 说道:
你这样看看:
double(D)
────────────────────────────────────────
mingming (小坏妞) 于 Sun Feb 29 15:04:13 2004 说道:
太感谢了!!!!可以了!!
我想问一下问什么会出现这种情况,我下面还有类似的程序就没有?
────────────────────────────────────────
zjliu (秋天的萝卜) 于 2004年02月29日15:10:44 星期天 说道:
多多尝试吧,我也是猜的
我想这个软件里面很多函数的用处,往往书上
并没写到
────────────────────────────────────────
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.935毫秒