各位大侠,我这有一个matlab程序,需要转换成vb或vc程序,请大家帮忙看看!谢谢!!!

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:14:07
function ans=calOneZR(f,f0,zs,ps)
% 求单个零点的相应函数值
% f0 腔体谐振频率点
% zs,ps 原有的零点和极点
ans=prod(f*f-[ps f0].*[ps f0])-prod(f*f-zs.*zs);

function ans=calP(f0,z,p,f,m)
% function calP(f0,z,p,f,m)
% 得到i-1阶P的函数值,为求其零点使用
num=size(z,2);
N=size(f,2);
if (num==1)
ans=(f0*f0-f(N-1)^2)*(f0*f0-z*z)-m(N-1)^2*f0*f0;
return;
end
ans=(f0*f0-f(N-num)*f(N-num))*prod(f0*f0-z.*z)-m(N-num)^2*f0*f0*prod(f0*f0-p.*p);

function [za,pa]=findNewZP(x,y,z)
% 由i阶输入阻抗的零点和极点得到i+1阶的零点和极点
% 新的零点和极点的数量均减少1
% z,p 新的零点和极点
% x,y,z i阶零点、极点和i腔谐振频率

za=y;
num=size(za,2);
pa=zeros(1,num-1);
for i=1:num-1
pa(i)=fzero(@calOneZR,[za(i) za(i+1)],[],z,x,y);
end

unction ans=findZinZeros(z,p,f,m)
% function ans=findZinZeros(p,f,m)
% 得到i-1阶输入阻抗的零点
% z,p i阶的零点和极点
% f,m 谐振频率和耦合强度

num=size(z,2); % i阶零点数量

delta=0.01;
while (calP(z(1),z,p,f,m)*calP(z(

1.用对话框程序不是很省事吗?
2.生成单文档时基类选CFormView.可以和对话框程序一样的用
3.以上方法都很简单.自己练练手吧.若要用CView自己在程序里画界面就比较麻烦了.很花功夫的.