请教大牛matlab中fsolve函数的问题
录入:edatop.com 阅读:
小生编写了以下的matlab程序求解电路问题,由于不熟悉fsolve函数,程序不收敛。初步猜测是fsolve设置不当导致收敛不到我需要的精度,请熟悉fsolve的大牛帮忙看一下程序要怎么改,谢谢
A_final = 0.4; % A_final is the final gain after time t
A0 = 0.5:0.1:0.5; % A0 is the dc gain of a single pre amplifier
fu = 1e10:1e9:1e10;
Tao = 1./(2*pi*fu);
t_init = 1e-11;
z = zeros(size(A0,2),size(Tao,2));
for i = 1:1:size(A0,2)
for j = 1:1:size(Tao,2)
f = @(t)exp(t/(A0(i)*Tao(j)))-(1+t/(A0(i)*Tao(j)))/(1-A_final/A0(i));
options=optimset('DiffMinChange',1e-12,'Display','iter','MaxIter',1e6,'TolFun',1e-12,'TolX',1e-12,'MaxFunEvals',1e6);
z(i,j) = fsolve(f,t_init,options);
end
end
A_final = 0.4; % A_final is the final gain after time t
A0 = 0.5:0.1:0.5; % A0 is the dc gain of a single pre amplifier
fu = 1e10:1e9:1e10;
Tao = 1./(2*pi*fu);
t_init = 1e-11;
z = zeros(size(A0,2),size(Tao,2));
for i = 1:1:size(A0,2)
for j = 1:1:size(Tao,2)
f = @(t)exp(t/(A0(i)*Tao(j)))-(1+t/(A0(i)*Tao(j)))/(1-A_final/A0(i));
options=optimset('DiffMinChange',1e-12,'Display','iter','MaxIter',1e6,'TolFun',1e-12,'TolX',1e-12,'MaxFunEvals',1e6);
z(i,j) = fsolve(f,t_init,options);
end
end
申明:网友回复良莠不齐,仅供参考。如需专业解答,请学习本站推出的微波射频专业培训课程。
上一篇:请教:测试时小数锁相环噪声恶化的问题
下一篇:关于拟合电阻的问题

