I have no idea what would be necessary for LTSPice to export in Cartesian coordiantes, however to convert them to Cartesian in MATLAB is straightforward, by extracting the real and imag components of the ‘Rsp’ vector as the ‘Real’ and ‘Imag’ vectors (this also identifies the system, since I had that code ready to go) —
filename = 'https://www.mathworks.com/matlabcentral/answers/uploaded_files/844455/Draft3.txt';
T1 = readtable(filename, 'VariableNamingRule','preserve')
T1 = 401×2 table
Var1 Var2
_______________________________________________ ___________
{'1.00000000000000e+001→4.99999950651983e-001'} -0.00015708
{'1.02329299228075e+001→4.99999948326283e-001'} -0.00016074
{'1.04712854805090e+001→4.99999945890976e-001'} -0.00016448
{'1.07151930523761e+001→4.99999943340896e-001'} -0.00016831
{'1.09647819614319e+001→4.99999940670635e-001'} -0.00017223
{'1.12201845430196e+001→4.99999937874529e-001'} -0.00017625
{'1.14815362149688e+001→4.99999934946646e-001'} -0.00018035
{'1.17489755493953e+001→4.99999931880776e-001'} -0.00018455
{'1.20226443461741e+001→4.99999928670417e-001'} -0.00018885
{'1.23026877081238e+001→4.99999925308757e-001'} -0.00019325
{'1.25892541179417e+001→4.99999921788668e-001'} -0.00019775
{'1.28824955169313e+001→4.99999918102682e-001'} -0.00020236
{'1.31825673855641e+001→4.99999914242981e-001'} -0.00020707
{'1.34896288259165e+001→4.99999910201378e-001'} -0.00021189
{'1.38038426460288e+001→4.99999905969300e-001'} -0.00021683
{'1.41253754462275e+001→4.99999901537771e-001'} -0.00022188
V2c = cellfun(@(x)sscanf(x, '%f\t%f'), T1.Var1, 'Unif',0);
V2m = [cell2mat(V2c')' T1.Var2]
V2m = 401×3
10.0000 0.5000 -0.0002
10.2329 0.5000 -0.0002
10.4713 0.5000 -0.0002
10.7152 0.5000 -0.0002
10.9648 0.5000 -0.0002
11.2202 0.5000 -0.0002
11.4815 0.5000 -0.0002
11.7490 0.5000 -0.0002
12.0226 0.5000 -0.0002
12.3027 0.5000 -0.0002
T2 = table('Size',[size(T1.Var1,1) 3],'VariableTypes',{'double','double','double'}, 'VariableNames',{'FreqHz','MagndB','PhasDg'});
T2.FreqHz = V2m(:,1);
T2.MagndB = V2m(:,2);
T2.PhasDg = V2m(:,3)
T2 = 401×3 table
FreqHz MagndB PhasDg
______ ______ ___________
10 0.5 -0.00015708
10.233 0.5 -0.00016074
10.471 0.5 -0.00016448
10.715 0.5 -0.00016831
10.965 0.5 -0.00017223
11.22 0.5 -0.00017625
11.482 0.5 -0.00018035
11.749 0.5 -0.00018455
12.023 0.5 -0.00018885
12.303 0.5 -0.00019325
12.589 0.5 -0.00019775
12.882 0.5 -0.00020236
13.183 0.5 -0.00020707
13.49 0.5 -0.00021189
13.804 0.5 -0.00021683
14.125 0.5 -0.00022188
D = table2array(T2)
D = 401×3
10.0000 0.5000 -0.0002
10.2329 0.5000 -0.0002
10.4713 0.5000 -0.0002
10.7152 0.5000 -0.0002
10.9648 0.5000 -0.0002
11.2202 0.5000 -0.0002
11.4815 0.5000 -0.0002
11.7490 0.5000 -0.0002
12.0226 0.5000 -0.0002
12.3027 0.5000 -0.0002
Mag = db2mag(T2.MagndB); % Absolute MAgnitude (Not Decibels)
Phs = deg2rad(T2.PhasDg); % Radian Phase Angle
Rsp = Mag.*exp(1j*Phs)
Rsp =
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0000i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0593 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0001i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0002i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0003i
1.0592 - 0.0004i
1.0592 - 0.0004i
1.0592 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0004i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0591 - 0.0005i
1.0590 - 0.0005i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0590 - 0.0006i
1.0589 - 0.0007i
1.0589 - 0.0007i
1.0589 - 0.0007i
1.0589 - 0.0007i
1.0589 - 0.0007i
1.0589 - 0.0007i
1.0588 - 0.0008i
1.0588 - 0.0008i
1.0588 - 0.0008i
1.0588 - 0.0008i
1.0588 - 0.0008i
1.0587 - 0.0008i
1.0587 - 0.0009i
1.0587 - 0.0009i
1.0587 - 0.0009i
1.0586 - 0.0009i
1.0586 - 0.0010i
1.0586 - 0.0010i
1.0585 - 0.0010i
1.0585 - 0.0010i
1.0585 - 0.0010i
1.0584 - 0.0011i
1.0584 - 0.0011i
1.0584 - 0.0011i
1.0583 - 0.0011i
1.0583 - 0.0012i
1.0582 - 0.0012i
1.0582 - 0.0012i
1.0581 - 0.0012i
1.0581 - 0.0013i
1.0580 - 0.0013i
1.0580 - 0.0013i
1.0579 - 0.0014i
1.0578 - 0.0014i
1.0578 - 0.0014i
1.0577 - 0.0014i
1.0576 - 0.0015i
1.0576 - 0.0015i
1.0575 - 0.0015i
1.0574 - 0.0016i
1.0573 - 0.0016i
1.0572 - 0.0017i
1.0571 - 0.0017i
1.0570 - 0.0017i
1.0569 - 0.0018i
1.0568 - 0.0018i
1.0567 - 0.0018i
1.0566 - 0.0019i
1.0565 - 0.0019i
1.0564 - 0.0020i
1.0563 - 0.0020i
1.0561 - 0.0020i
1.0560 - 0.0021i
1.0558 - 0.0021i
1.0557 - 0.0022i
1.0555 - 0.0022i
1.0554 - 0.0023i
1.0552 - 0.0023i
1.0550 - 0.0023i
1.0548 - 0.0024i
1.0546 - 0.0024i
1.0544 - 0.0025i
1.0542 - 0.0025i
1.0540 - 0.0026i
1.0538 - 0.0026i
1.0536 - 0.0027i
1.0533 - 0.0027i
1.0531 - 0.0028i
1.0528 - 0.0028i
1.0525 - 0.0029i
1.0523 - 0.0029i
1.0520 - 0.0030i
1.0517 - 0.0030i
1.0514 - 0.0031i
1.0510 - 0.0031i
1.0507 - 0.0032i
1.0504 - 0.0032i
1.0500 - 0.0033i
1.0496 - 0.0033i
1.0493 - 0.0034i
1.0489 - 0.0034i
1.0485 - 0.0035i
1.0481 - 0.0035i
1.0476 - 0.0036i
1.0472 - 0.0036i
1.0468 - 0.0037i
1.0463 - 0.0037i
1.0458 - 0.0038i
1.0453 - 0.0038i
1.0448 - 0.0039i
1.0443 - 0.0039i
1.0438 - 0.0040i
1.0433 - 0.0040i
1.0427 - 0.0041i
1.0422 - 0.0041i
1.0416 - 0.0041i
1.0410 - 0.0042i
1.0405 - 0.0042i
1.0399 - 0.0042i
1.0393 - 0.0043i
1.0386 - 0.0043i
1.0380 - 0.0043i
1.0374 - 0.0044i
1.0367 - 0.0044i
1.0361 - 0.0044i
1.0354 - 0.0044i
1.0348 - 0.0044i
1.0341 - 0.0044i
1.0335 - 0.0045i
1.0328 - 0.0045i
1.0321 - 0.0045i
1.0314 - 0.0045i
1.0307 - 0.0045i
1.0301 - 0.0045i
1.0294 - 0.0045i
1.0287 - 0.0045i
1.0280 - 0.0045i
1.0273 - 0.0045i
1.0267 - 0.0045i
1.0260 - 0.0045i
1.0253 - 0.0044i
1.0247 - 0.0044i
1.0240 - 0.0044i
1.0233 - 0.0044i
1.0227 - 0.0044i
1.0221 - 0.0043i
1.0214 - 0.0043i
1.0208 - 0.0043i
1.0202 - 0.0042i
1.0196 - 0.0042i
1.0190 - 0.0042i
1.0184 - 0.0041i
1.0178 - 0.0041i
1.0172 - 0.0041i
1.0167 - 0.0040i
1.0161 - 0.0040i
1.0156 - 0.0039i
1.0151 - 0.0039i
1.0146 - 0.0038i
1.0141 - 0.0038i
1.0136 - 0.0037i
1.0131 - 0.0037i
1.0126 - 0.0036i
1.0122 - 0.0036i
1.0117 - 0.0036i
1.0113 - 0.0035i
1.0109 - 0.0034i
1.0105 - 0.0034i
1.0101 - 0.0033i
1.0097 - 0.0033i
1.0094 - 0.0032i
1.0090 - 0.0032i
1.0087 - 0.0031i
1.0083 - 0.0031i
1.0080 - 0.0030i
1.0077 - 0.0030i
1.0074 - 0.0029i
1.0071 - 0.0029i
1.0068 - 0.0028i
1.0065 - 0.0028i
1.0063 - 0.0027i
1.0060 - 0.0027i
1.0058 - 0.0026i
1.0055 - 0.0026i
1.0053 - 0.0025i
Real = real(Rsp) % REAL Part Of Complex Response Vector
Real = 401×1
1.0593
1.0593
1.0593
1.0593
1.0593
1.0593
1.0593
1.0593
1.0593
1.0593
Imag = imag(Rsp) % IMAG Part Of Complex Response Vector
Imag = 401×1
1.0e+00 *
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
-0.0000
Sizes = [size(T2.FreqHz); size(Rsp)]
Sizes = 2×2
401 1
401 1
sysfr = idfrd(Rsp,T2.FreqHz,0,'FrequencyUnit','Hz') % Create System Response Data Object
sysfr =
IDFRD model.
Contains Frequency Response Data for 1 output(s) and 1 input(s).
Response data is available at 401 frequency points, ranging from 10 Hz to 1e+05 Hz.
Status:
Created by direct construction or transformation. Not estimated.
sys_ss = ssest(sysfr, 3) % State Space Realisation
sys_ss =
Continuous-time identified state-space model:
dx/dt = A x(t) + B u(t) + K e(t)
y(t) = C x(t) + D u(t) + e(t)
A =
x1 x2 x3
x1 -1.967e+05 4.001e+05 1.656e+08
x2 2.268e-07 1.976e+05 1.66e+08
x3 -8.426e-11 -8.339e-11 5.911e+11
B =
u1
x1 1.475e-10
x2 -1.957e-10
x3 1.049e+06
C =
x1 x2 x3
y1 1359 -1362 -5.638e+05
D =
u1
y1 0
K =
y1
x1 0
x2 0
x3 0
Parameterization:
FREE form (all coefficients in A, B, C free).
Feedthrough: none
Disturbance component: none
Number of free coefficients: 15
Use "idssdata", "getpvec", "getcov" for parameters and their uncertainties.
Status:
Estimated using SSEST on frequency response data "sysfr".
Fit to estimation data: 100%
FPE: 4.055e-14, MSE: 3.935e-14
figure
compare(sysfr, sys_ss)
sys_tf = tfest(sysfr, 2, 2) % Transfer Function Realisation
sys_tf =
s^2 + 885.4 s - 4.117e10
------------------------
s^2 - 860.3 s - 3.887e10
Continuous-time identified transfer function.
Parameterization:
Number of poles: 2 Number of zeros: 2
Number of free coefficients: 5
Use "tfdata", "getpvec", "getcov" for parameters and their uncertainties.
Status:
Estimated using TFEST on frequency response data "sysfr".
Fit to estimation data: 100%
FPE: 4.796e-14, MSE: 4.678e-14
figure
compare(sysfr, sys_tf)
figure
pzmap(sys_ss)
grid on
format long E
Poles = pole(sys_ss)
Poles = 3×1
1.0e+00 *
-1.967237778489041e+05
1.975767036132812e+05
5.911429745307852e+11
Zeros = zero(sys_ss)
Zeros = 2×1
1.0e+00 *
-2.033539159391936e+05
2.024607634016894e+05
figure
subplot(2,1,1)
semilogx(D(:,1), D(:,2))
title('Amplitude (dB)')
grid
subplot(2,1,2)
semilogx(D(:,1), D(:,3))
title('Phase (°)')
grid
xlabel('Frequency')
EDIT — (26 Dec 2021 at 13:24)
Corrected name provided to readtable, and provided subsequent correct parsing of the resulting table.
With those changes, my code runs without error and produces the correct results.
.