Загрузка данных


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));