悲催菜鸟请教高手这个matlab程序如何画图?
本帖最后由 流浪的耳朵 于 2011-5-17 17:22 编辑以前很少接触matlab这个软件,所以我对这方面完全是菜鸟{:{24}:},老师突然布置任务给我,要求写一篇关于用matlab仿真液固界面的声场。。悲催了咩~~{:{19}:}
狂补习matlab的相关知识,但事实证明临时抱佛脚的结果无济于事的。。虽然学了不少关于matlab的知识,但是似乎都用不上,或者不晓得怎么用。。这道程序我对照公式反反复复研究好几个星期了,没能看懂,深爱的秀发也被自己揪掉好多{:{18}:}。。。
求~~高手。。大神。。帮我看看这道程序好不??运行后貌似只有一堆数据,如何画出图像来呀( ⊙ o ⊙ )!。。纠结死了。。
哦,这是关于求液体、固体内声场的空间分布的。。呃,高手即使不能不能出图,帮我看看成不,帮我在每行程序后面注解一下也行,我不胜感激。。{:{24}:}我决定跟这个程序死磕到底了。。 vc=6260;vs=3080;den=2.7;qc=60;qs=60;
vf=1500;qf=45;def=1;d0=.1;df=300000/1024;dl=150/1024;
knumber=512;znumber=64;omnumb=1;omnume=512;tnumber=10;
dt=10;fo=70;b=25;xz=4;dz=xz/dl/2/knumber;dx=1/dl/2/knumber;
vff=vf*(1-i/2/qf);vcc=vc*(1-i/2/qc);vss=vs*(1-i/2/qs);
freq=zeros(1,omnume);
ferk=zeros(1.2*omnume);fre=zeros(1,2*omnume+1);wfe=zeros(1,omnume);
for iso=1:omnume;sou(1,iso)=exp(-(iso*df/1000-fo)^2/b^2);end
for kn=1:knumber;l=2*pi*(kn-1)*dl;
for omn=omnumb:omnume;
om=2*pi*omn*(df-1);kz=((om*om)/(vff*vff)-l*l)^0.5;
kc=((om*om)/(vcc*vcc)-l*l)^0.5;
ks=((om*om)/(vss*vss)-l*l)^0.5;
A1=[-i*kz,-i*kc,i*l];m2=ks*ks-l*l;m3=2*l*kc;
A3=;m2=(2*vs*vs*l*l-om*om)*den;
m3=2*vs*vs*den*l*ks;A2=;
eh=exp(i*kz*d0);
B=[-i*eh;-om*om*def/kz*eh;0];
M=;
C=inv(M)*B;
for nz=1:znumber;
ezc=exp(i*kc*(nz-1)*dz);ezs=exp(i*ks*(nz-1)*dz);
spectrum(nz,omn)=m2*C(2)*ezc+m3*C(3)*ezs;
end
for nz=1:znumber;
ez=exp(i*kz*(nz-1)*dz);spectrumf(nz,omn)=C(1)*ez;
end
end
for nz=1:znumber;
freq=spectrum(nz,:);freq=freq.*sou;fre=;
frek=fre(1,1:2*omnume);wfe=fft(frek);
for it=1:tnumber;
imagtzk(it,nz,kn)=wfe(dt*it);
end
freq=spectrumf(nz,:);freq=freq.*sou;fre=;
frek=fre(1,1:2*omnume);wfe=fft(frek);
for it=1:tnumber;
imagtzkf(it,nz,kn)=wfe(dt*it);
end
end
end
for it=1:tnumber;
for nz=1:znumber;
freqq=reshape(imagtzk(it,nz,:),1,knumber);freq=;
fres=freq(1,1:2*knumber);frekq=ifft(fres);
imag(it,nz,:)=real(frekq(1,1:knumber));
freqq=reshape(imagtzkf(it,nz,:),1,knumber);freq=;
fres=freq(1,1:2*knumber);frekq=ifft(fres);
imagf(it,nz,:)=real(frekq(1,1:knumber));
end
end
若是我
help + debug 回复 2 # ChaChing 的帖子
还是要谢谢你 回复 3 # 流浪的耳朵 的帖子
连个画图的命令都没有,怎么画呀,起码得有个plot吧?你的程序中就没见你有让它执行画图的命令,所以只能出数据了 回复 4 # 煜宸0922 的帖子
我就是不会将运行后得出的这些数据进行作图啊~~
求指导。。。 回复 5 # 流浪的耳朵 的帖子
找本matlab的书,看关于画图的,用的命令是plot(),括号里把你要画的变量输入进去。
页:
[1]