Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-05-27, 20:58   #1
berrylolo
初级会员
 
注册日期: 2008-05-27
年龄: 39
帖子: 3
声望力: 0
berrylolo 正向着好的方向发展
默认 跪求牛人指点一个关于矩阵的问题

程序如下,我要用新计算出的矩阵Un里面的一个元素Un(1)来列方程,但是。。。痛苦啊,毕设要来不及了,这是我的第一个程序,研究5天了,还没结果,求高手指点一下,万分感谢啊!!!
function nonlinearcircuits1
global R1 R2 R3 R4 Us R5 v i
R1=1; R2=0.5; R3=0.5; R4=1;Us=1;%电路中元器件的参数数值
R5=input('R5'); %输入R5的初始试探指
disp('The initial guess R5 is');
j=0;
while(j<100) %开始循环,用节点电压矩阵计算在R5的某一试探电阻下个节点电压和电流
Un=jdjz(R5); %执行子程序节点电压矩阵的计算
v=Us-Un(1); %此时非线性电阻两端电压v
i=3Un(1)-Un(2)-2Un(3); %此时非线性电阻两端电流i
f=i^3*R5^3-i; %非线性电阻的特性函数
if(f<1e-4) %执行条件语句,
disp('The final R5 is','R5'); %当修正电阻R5满足要求:输出R5
break;
else %否则继续用牛拉法修正R5
R50=R5;
f1=i^3*R50^3-i;
f2=3i^3*R50^2;
R5=R50-f1/f2;
j=j+1;
end;
end;


function Un=jdjz(R5) %子程序节点电压矩阵 Yn*Un=In
y11=1/R1+1/R2+1/R5; y12=-1/R1; y13=-1/R2;
y21=-1/R1; y22=1/R1+1/R3; y23=0;
y31=-1/R2; y32=0; y33=1/R2+1/R4;%以上设置导纳矩阵Yn的元素
Yn=[y11,y12,y13;y21,y22,y23;y31,y32,y33];
In=[1/R5*Us;-1;1];
Un=Yn\In;
berrylolo 当前离线   回复时引用此帖
旧 2008-05-27, 21:01   #2
berrylolo
初级会员
 
注册日期: 2008-05-27
年龄: 39
帖子: 3
声望力: 0
berrylolo 正向着好的方向发展
默认

补充一下,是加大部分的Un(1)划红线:ft:
berrylolo 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[求助]关于命令distspec(trellis,n) coffietree MATLAB论坛 1 2008-06-13 20:21
怎么使图像拼贴 微笑的鱼 MATLAB论坛 0 2008-06-13 09:42
[求助]网格线怎么设置? achao MATLAB论坛 2 2008-06-05 08:02
【文章】仿真动画软件设计作品--电路开闭 yesman MATLAB论坛 0 2007-12-11 16:21
【求助】matlab load 的奇怪问题 dnping MATLAB论坛 1 2007-07-26 11:34


所有时间均为北京时间。现在的时间是 10:55


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.