[求助]各位高手,我编了一个程序,矩阵处理那块有点问题,大家帮忙啊!谢谢
<P>各位高手,这是我的程序的其中一部分,若频率f为单频时,可以求出Ai是个6*6的矩阵,但若频率变化,假设是1E9,1E10,1E11,1E12,该如何求呢?也就是想每一个频率求出一个Ai矩阵。实际中频率是变化区间1E8:1E9:1E11,所以不可能手动改一次频率求一次。请大家给看看,帮帮忙!非常感谢!<BR> clear<BR>Ncond=3; % Number of conductors;<BR>Lc=0.1; % Length of condutors(m);<BR>C=1E-12*; % Capacitance coeffiecient matrix(F);<BR> <BR>L=1.0e-006 *; % Inductance coeffiecient matrix (H);<BR><BR> <BR>f=1E9; % Frequency;<BR> <BR> <BR> % Part 2: Calculate propagation constsnt [Γ]and velocity;<BR><BR>=eig(C*L)<BR>for i=1:Ncond<BR> Lamuda(i)=D(i,i); <BR>end;<BR>w=2*pi*f;<BR>for x=1:2<BR>for k=1:Ncond<BR> Gama(k,k)=j*w*sqrt(Lamuda(k));<BR> end;<BR> end;<BR> for i=1:3<BR> v(i)=w/imag(Gama(i,i)) <BR> end;<BR> <BR> % Part 3: Calculating crosstalk voltage at start and end points of No.1,3 ;<BR><BR>Y=j*w*C;<BR>E1p=exp(Lc*Gama);<BR>E2p=exp(-Lc*Gama);<BR>for k=1:Ncond<BR> E1(k,k)=E1p(k,k);<BR> E2(k,k)=E2p(k,k);<BR>end;<BR><BR>Ai11=0.5*inv(Y)*T*(E1+E2)*inv(T)*Y;<BR>Ai12=-0.5*inv(Y)*T*Gama*(E1-E2)*inv(T);<BR>Ai21=-0.5*T*(E1-E2)*inv(Gama)*inv(T)*Y;<BR>Ai22=0.5*T*(E1+E2)*inv(T);<BR>Ai=</P>现在急着计算,高手快出现啊!现在急着计算 for expi=9:12<BR>....<BR><BR>f=1*10^(expi); <BR><BR>....<BR>%save Ai to file<BR>end<BR><BR>======= or ===========<BR>for expi=1:(12-9+1)<BR>......<BR>f=1E9;<BR>....<BR>%save Ai to file<BR><BR>f=f*10;<BR>end<BR><BR><BR><BR><BR><BR><BR> <P>问一下,是将循环从f 开始到最后结束吗?<BR>那后面你是如何存储Ai 因为后面还要一个个调用求方程!<BR>谢谢啊</P>
页:
[1]