clear; clc;
w = 1000;
R1 = 40; R2 = 50; R3 = 20;
L1 = 20e-3; L2 = 50e-3;
C1 = 12.5e-6; C2 = 40e-6;
E = 100*exp(1j*pi/4); % ЭДС между узлом 2 и землёй
ZC1 = 1/(1j*w*C1); ZL1 = 1j*w*L1;
ZC2 = 1/(1j*w*C2); ZL2 = 1j*w*L2;
Zt = ZC1 + ZL1 + R1; % ветвь 1-3
% V2 = E задано, неизвестные V1, V3
Y = [ 1/Zt+1/R2+1/ZL2, -1/Zt;
-1/Zt, 1/Zt+1/R3+1/ZC2 ];
b = [ E/R2;
E/R3 ];
V = Y\b;
V1 = V(1); V3 = V(2); V2 = E;
% токи в ветвях (амплитуды)
I_top = (V1-V3)/Zt; % 1->3 (C1, L1, R1)
I_R2 = (V1-V2)/R2; % 1->2
I_L2 = V1/ZL2; % 1->4
I_R3 = (V2-V3)/R3; % 2->3
I_C2 = V3/ZC2; % 3->4
I_src = I_R3 - I_R2; % ток источника в узел 2
names = {'I_C1,L1,R1','I_R2','I_L2','I_R3','I_C2','I_E'};
I = [I_top I_R2 I_L2 I_R3 I_C2 I_src];
fprintf('%-10s %10s %10s | %10s %10s (как в TINA)\n', ...
'Ветвь','|I|,A','фаза,°','I_д,A','фаза,°');
for k = 1:numel(I)
It = I(k)/sqrt(2)*exp(-1j*pi/2); % действующее, sin-фаза
fprintf('%-10s %10.4f %10.2f | %10.4f %10.2f\n', names{k}, ...
abs(I(k)), angle(I(k))*180/pi, abs(It), angle(It)*180/pi);
end
% проверка KCL
fprintf('KCL узел 1: %.2e\n', abs(I_top + I_R2 + I_L2));