13.08.2013 Views

?????????????? ?????? ? ????????? ?????????? ??????? ?????

?????????????? ?????? ? ????????? ?????????? ??????? ?????

?????????????? ?????? ? ????????? ?????????? ??????? ?????

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Промежуточные данные: в программе схема рассчитывается методом контурных<br />

токов, матрица контурных сопротивлений обозначена z, вектор контурных<br />

напряжений ek, вектор контурных токов ik. Итерационные приближения тока в<br />

диоде обозначены id и id0. Условия сходимости для тока в диоде считаются<br />

выполненными, если оба этих приближения находятся в одном квадранте (т.е.<br />

одного знака).<br />

Соответствие обозначений, принятых в программе с обозначениями в формулах следующее:<br />

Cn-1 =C_1, Cn=C_0, C j n+1=Cj, C j-1 n+1 =Cj_1,<br />

Un-1=U_1, Un=U_0, Un+1=uc.<br />

Выходные данные: ucg(m) – массив значений напряжения на емкости; ig(m) – массив<br />

значений тока в диоде.<br />

clear; // очистка памяти<br />

R1=12.;R2=68.; // ввод линейных сопротивлений<br />

dt=0.0001;T=0.1;t=[0:dt:T]; //ввод диапазона времени<br />

M=round(T/dt); //определение числа расчетных точек по времени<br />

eps=0.02; //задание точности<br />

N=1500; //максимальное число итераций<br />

a0=-1; a1=1; //коэффициенты для формулы 1-го порядка<br />

m_gir=2; //число точек до выхода на метод Гира<br />

//ввод табличной зависимости статической емкости<br />

xc=[-3 0 3 6 10 15 25 ];<br />

yc=[ 0.7e-3 0.6e-3 0.51e-3 0.46e-3 0.41e-3 0.385e-3 0.37e-3];<br />

dc=splin(xc,yc); // построение сплайна для статической емкости<br />

xx=[-3:3:27]; yy=interp(xx,xc,yc,dc); //отображение сплайна в массив yy<br />

xset('window',1); //задается 1-е окно для графика нелинейной емкости<br />

plot2d(xx,yy,2,rect=[-3 0 25 0.7e-3]);xgrid(1)<br />

id0=0; uc_0=0; //начальное значение тока диода и напряжения емкости<br />

C_0=interp(uc_0,xc,yc,dc); //начальная емкость<br />

ec=-uc_0 //эдс разностно-итерационной схемы емкости<br />

for m=1:M // внешний цикл по времени<br />

E(m)=21*cos(2*%pi*50*t(m)); //источник питания схемы<br />

if id0>=0. then Rd=0.001; else Rd=1000; end; / /начальное сопротивление диода<br />

Cj_1=C_0; //начальное итерационное приближение емкости<br />

if m>m_gir then //условие перехода на метод Гира<br />

a0=-1.5; a1=2; a2=-0.5; //коэффициенты α в методе Гира<br />

end;<br />

for n=1:N, //внутренний итерационный цикл<br />

ek1=E(m)+ec; ek2=E(m); ek=[ek1;ek2];<br />

z=[R1+Rd+dt/(a0*Cj_1) R1+Rd; // Расчет схемы<br />

R1+Rd R1+R2+Rd ];<br />

ik=z^(-1)*ek; id=ik(1)+ik(2); // новый ток диода<br />

if m> m_ gir then //переход на метод Гира<br />

ec=(a1*uc_0*C_0/Cj_1+a2*uc_1*C_1/Cj_1)/a0;<br />

else ec=a1*uc_0*C_0/Cj_1; end; // метод 1-го порядка<br />

uc=-dt/(a0*Cj_1)*ik(1)-ec; //расчет напряжения на емкости<br />

Cj=interp(uc,xc,yc,dc); //расчет емкости<br />

//проверка точности итераций для емкости и диода<br />

48

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!