?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
?????????????? ?????? ? ????????? ?????????? ??????? ?????
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
1k e1-e2<br />
ek= 2k e2-e3-e4-e5<br />
3k e5-e6<br />
9. Записать выражение для расчета контурных токов:<br />
ik = (Zk) -1 *ek;<br />
10.Записать выражения для токов в емкостных и индуктивных ветвях<br />
через контурные токи<br />
i2 = ik2 - ik1; i3 = -ik2; i4 = -ik2; i6 = -ik3;<br />
11.Записать выражения для расчета напряжения на емкостных и индуктивных<br />
ветвях:<br />
U2 = Z2*i2 - e2; U3 = Z3*i3 - e3; U4 = Z4*i4 - e4; U6 = Z6*i6 - e6;<br />
12. Записать выражения для новых начальных условий:<br />
i20=i2;U20=U2;i30=i3;U30=U3;i40=i4;U40=U4;i60=i6;U60=U6;<br />
Далее следует составить алгоритм, в котором установить порядок расчета<br />
по приведенным формулам.<br />
clear // очистка данных<br />
// Ввод параметров и задание начальных условий<br />
v1=1; R1=0.05; C1=1e-3; L1=1e-6; L2=2e-6; R2=1e3; v2=0.03; C2=2e-3;<br />
Uc10=0; Uc20=0; iL10=0; iL20=0;<br />
m=1; // масштаб для исследования влияния величины расчетного шага<br />
dt=0.00001*m; Nt=100/m;<br />
k=2; // Ввод метода расчета: k=1 или k=2 для метода трапеций.<br />
// ввод начальных условий<br />
U20=Uc10; U60=Uc20; i30=iL10; i40=iL20;<br />
//расчет сопротивлений и проводимостей<br />
Z1 = R1; Z5 = R2;<br />
Z2_1 = dt/C1; Z3_1= L1/dt; Z4_1= L2/dt; Z6_1 = dt/C2;<br />
Z2_2 = dt/(2*C1); Z3_2 = 2*L1/dt; Z4_2 = 2*L2/dt; Z6_2 = dt/(2*C2);<br />
// для расчета проводимостей для обоих методов составляется функция<br />
function Y=Yk(Z1,Z2,Z3,Z4,Z5,Z6)<br />
Z=[Z1+Z2, -Z2, 0;<br />
-Z2, Z2+Z3+Z4+Z5, -Z5;<br />
0, -Z5, Z5+Z6];<br />
Y=Z^(- 1);<br />
endfunction ;<br />
// вычисление контурных проводимостей<br />
Yk_1=Yk(Z1, Z2_1, Z3_1, Z4_1, Z5, Z6_1);<br />
Yk_2=Yk(Z1, Z2_2, Z3_2, Z4_2, Z5, Z6_2);<br />
e1 = v1; e5 = v2;<br />
Uc1g(1)=Uc10; iL1g(1)=iL20; t(1)=0; // Объявление массивов для графиков<br />
for n=2:Nt, // Задаем цикл по n<br />
if ([k==1]|[n==2]) then // если расчет для 1-го порядка или для 1-го шага,то<br />
// расчет э.д.с. и контурных токов для метода Эйлера 1-го порядка<br />
e2 = -U20; e3 = i30*Z3_1;<br />
e4 = i40*Z4_1; e6 = -U60;<br />
ek=[e1-e2; e2-e3-e4-e5; e5-e6];<br />
ik=Yk_1*ek;<br />
38