dengpin 发表于 2011-7-19 22:37

求助各位高手:求变压器励磁电流程序出错,谁能帮我改改,小女子感激涕零

求助:求变压器励磁电流的程序哪里出错了,谁能指点指点我,帮忙看看啊?

程序如下:
clear all
disp(['磁路-电路耦合lhq_dc04,开始...']);
t1=clock;
disp(['Time:   ',int2str(fix(t1(4))),': ',int2str(fix(t1(5))),': ',int2str( fix(t1(6)))]);
load bh.mat;
Ii=((39+13)*2)/1008/1000*bh(:,1);% i=HL/1000N
Fi=26*37/1e6*bh(:,2);            % Φ=BS/e6
%DESCRT=1000;
xx=min(Ii):max(Ii);%将Ii中数据全部赋给xx
%fiti=interp1(Ii,Fi,xx,'spline');
num=length(xx);%取得xx的长度,即等于H中数据点个数
N=num %输出num的值
%ydif=(fiti(2:1:num)-fiti(1:1:num-1))/max(Ii)*DESCRT;
%xdif=xx(1:1:num-1);
xxx=zeros(1,num);
for M=1:num
   % xxx(M+num-1)=xx(M);
    FI(M)=Fi(M)%FI(M+num-1)=fiti(M)+Fi(73);
    %FI(M)=-fiti(num-M+1)+Fi(73);
end

TM=10000;
i=zeros(1,TM);

t1=clock;
disp(['非线性迭代开始...']);
disp(['Time:   ',int2str(fix(t1(4))),': ',int2str(fix(t1(5))),': ',int2str( fix(t1(6)))]);

dt=5e-5;
i(1)=0;
i1(1)=0;
for M=1:TM
    N=1:num;
    a=i(M);
    while (a>=xxx(N))
      N=N+1;
      if(N==length(xxx))
            N=N-1;
            break;
      end
      
    end
   
    dfidt=(Fi(N+1)-Fi(N))/(xxx(N+1)-xxx(N));%di/dt=[Φ(n+1)-Φ(n)]/
    i(M+1)=dt*(220*1.414*sin(314*M*dt)-75*i(M))/1008/dfidt+i(M);%Φ(n+1)-Φ(n)=/N*dt
end
%t=0:dt:3000*dt
%figure(13)
%plot(t,i,'r-')
hold on
plot(i,'r');
t1=clock;
disp(['程序计算结束.']);
disp(['Time:   ',int2str(fix(t1(4))),': ',int2str(fix(t1(5))),': ',int2str( fix(t1(6)))]);


运行后报错如下:
磁路-电路耦合lhq_dc04,开始...
Time:   10: 56: 22

N =

   1


FI =

   -0.0014

非线性迭代开始...
Time:   10: 56: 22
??? Index exceeds matrix dimensions.

Error in ==> xiugai at 35
    while (a>=xxx(N))

yjhou 发表于 2011-7-20 09:21

按照错误来看,好像是你的N超出了矩阵的下标范围。

renzando 发表于 2011-7-20 15:12

有可能是M和N的维数不一样吧?

dengpin 发表于 2011-7-21 16:22

回复 3# renzando

是啊 M是一维,N怎么是二维的了,这是怎么回事呢?并且我要求的FI是需要迭代的,怎么会只有一个值FI=0.0014呢?谢谢您的答复

dengpin 发表于 2011-7-21 16:26

回复 2# yjhou


    谢谢您!按照您的建议我将第十二行“ N=num%输出num的值”删除,将第三十三行N=1:num改成N=1后运行又出现这样的错误[],这可如何是好?,附件怎么保存不了啊?再试试

yjhou 发表于 2011-7-21 17:15

回复 5# dengpin
从程序来看,你的N是多维的数组。num=length(xx)
你逐条调试吧,看看显示出来的信息是什么样的,再好判断。

dengpin 发表于 2011-7-21 17:59

回复 6# yjhou
谢谢您版主!我附件上传不了 试了好几次,没想到不小心成了灌水帖了 不好意思!好的 我再调试调试 急死我了!

抹茶的味道 发表于 2011-8-12 18:47

回复 7# dengpin


    你好,我也有变压器励磁电流的问题可以向你请教么

robin_zhong 发表于 2013-2-26 18:30

问题解决了吗?我也是遇到这种问题
页: [1]
查看完整版本: 求助各位高手:求变压器励磁电流程序出错,谁能帮我改改,小女子感激涕零