Working gain pattern class

This commit is contained in:
bareissvincent 2024-04-02 18:08:21 +02:00
parent 89c327acd2
commit bf58484dfa
13 changed files with 8728 additions and 5597 deletions

15
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,15 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python Debugger: Current File",
"type": "debugpy",
"request": "launch",
"program": "testing.py",
"console": "integratedTerminal"
}
]
}

View File

@ -0,0 +1,365 @@
#Parameters = {hull_eps=7}
farfield (f=2.45)
Theta [deg.] Phi [deg.] Abs(Dir.)[dBi ] Abs(Theta)[dBi ] Phase(Theta)[deg.] Abs(Phi )[dBi ] Phase(Phi )[deg.] Ax.Ratio[dB ]
------------------------------------------------------------------------------------------------------------------------------------------------------
0.000 0.000 -6.266e-02 -1.493e+01 0.070 -2.066e-01 333.311 2.189e+01
1.000 0.000 -8.928e-02 -1.548e+01 0.977 -2.166e-01 333.744 2.226e+01
2.000 0.000 -1.713e-01 -1.604e+01 1.722 -2.852e-01 334.097 2.261e+01
3.000 0.000 -3.105e-01 -1.661e+01 2.259 -4.136e-01 334.372 2.296e+01
4.000 0.000 -5.095e-01 -1.717e+01 2.533 -6.041e-01 334.571 2.330e+01
5.000 0.000 -7.718e-01 -1.774e+01 2.481 -8.599e-01 334.692 2.365e+01
6.000 0.000 -1.102e+00 -1.830e+01 2.033 -1.186e+00 334.729 2.402e+01
7.000 0.000 -1.506e+00 -1.884e+01 1.115 -1.587e+00 334.674 2.441e+01
8.000 0.000 -1.992e+00 -1.936e+01 359.653 -2.073e+00 334.511 2.485e+01
9.000 0.000 -2.571e+00 -1.982e+01 357.586 -2.654e+00 334.219 2.534e+01
10.000 0.000 -3.256e+00 -2.023e+01 354.880 -3.344e+00 333.762 2.590e+01
11.000 0.000 -4.066e+00 -2.054e+01 351.542 -4.165e+00 333.088 2.654e+01
12.000 0.000 -5.025e+00 -2.073e+01 347.646 -5.144e+00 332.110 2.725e+01
13.000 0.000 -6.169e+00 -2.079e+01 343.336 -6.322e+00 330.684 2.795e+01
14.000 0.000 -7.545e+00 -2.069e+01 338.816 -7.760e+00 328.547 2.833e+01
15.000 0.000 -9.215e+00 -2.045e+01 334.318 -9.555e+00 325.179 2.754e+01
16.000 0.000 -1.125e+01 -2.007e+01 330.057 -1.186e+01 319.405 2.406e+01
17.000 0.000 -1.361e+01 -1.958e+01 326.195 -1.487e+01 308.139 1.725e+01
18.000 0.000 -1.567e+01 -1.900e+01 322.824 -1.839e+01 282.621 8.759e+00
19.000 0.000 -1.569e+01 -1.836e+01 319.975 -1.907e+01 236.712 1.247e+00
20.000 0.000 -1.354e+01 -1.769e+01 317.632 -1.564e+01 204.529 4.172e+00
21.000 0.000 -1.098e+01 -1.701e+01 315.752 -1.222e+01 190.425 7.674e+00
22.000 0.000 -8.724e+00 -1.632e+01 314.278 -9.554e+00 183.502 1.001e+01
23.000 0.000 -6.836e+00 -1.564e+01 313.154 -7.449e+00 179.566 1.164e+01
24.000 0.000 -5.246e+00 -1.498e+01 312.324 -5.735e+00 177.091 1.282e+01
25.000 0.000 -3.890e+00 -1.433e+01 311.740 -4.301e+00 175.428 1.370e+01
26.000 0.000 -2.719e+00 -1.371e+01 311.358 -3.079e+00 174.260 1.438e+01
27.000 0.000 -1.696e+00 -1.311e+01 311.145 -2.021e+00 173.414 1.491e+01
28.000 0.000 -7.952e-01 -1.254e+01 311.069 -1.096e+00 172.792 1.533e+01
29.000 0.000 2.955e-03 -1.200e+01 311.107 -2.802e-01 172.330 1.567e+01
30.000 0.000 7.133e-01 -1.148e+01 311.238 4.427e-01 171.987 1.595e+01
31.000 0.000 1.347e+00 -1.098e+01 311.445 1.086e+00 171.736 1.617e+01
32.000 0.000 1.914e+00 -1.051e+01 311.716 1.658e+00 171.558 1.635e+01
33.000 0.000 2.421e+00 -1.007e+01 312.039 2.168e+00 171.438 1.650e+01
34.000 0.000 2.872e+00 -9.646e+00 312.406 2.622e+00 171.368 1.661e+01
35.000 0.000 3.275e+00 -9.249e+00 312.808 3.025e+00 171.339 1.670e+01
36.000 0.000 3.631e+00 -8.875e+00 313.240 3.380e+00 171.347 1.677e+01
37.000 0.000 3.944e+00 -8.524e+00 313.697 3.691e+00 171.387 1.682e+01
38.000 0.000 4.217e+00 -8.194e+00 314.175 3.960e+00 171.456 1.684e+01
39.000 0.000 4.452e+00 -7.886e+00 314.672 4.190e+00 171.552 1.686e+01
40.000 0.000 4.650e+00 -7.599e+00 315.183 4.383e+00 171.674 1.685e+01
41.000 0.000 4.813e+00 -7.332e+00 315.708 4.540e+00 171.821 1.683e+01
42.000 0.000 4.943e+00 -7.086e+00 316.245 4.662e+00 171.993 1.680e+01
43.000 0.000 5.039e+00 -6.859e+00 316.792 4.749e+00 172.189 1.675e+01
44.000 0.000 5.104e+00 -6.651e+00 317.349 4.804e+00 172.410 1.669e+01
45.000 0.000 5.136e+00 -6.463e+00 317.914 4.825e+00 172.657 1.661e+01
46.000 0.000 5.138e+00 -6.293e+00 318.488 4.813e+00 172.932 1.651e+01
47.000 0.000 5.107e+00 -6.141e+00 319.070 4.769e+00 173.236 1.640e+01
48.000 0.000 5.046e+00 -6.008e+00 319.660 4.691e+00 173.572 1.628e+01
49.000 0.000 4.953e+00 -5.893e+00 320.258 4.580e+00 173.942 1.613e+01
50.000 0.000 4.829e+00 -5.795e+00 320.864 4.435e+00 174.351 1.597e+01
51.000 0.000 4.672e+00 -5.715e+00 321.479 4.255e+00 174.803 1.578e+01
52.000 0.000 4.481e+00 -5.652e+00 322.101 4.039e+00 175.303 1.557e+01
53.000 0.000 4.257e+00 -5.607e+00 322.733 3.785e+00 175.859 1.534e+01
54.000 0.000 3.998e+00 -5.579e+00 323.374 3.491e+00 176.478 1.507e+01
55.000 0.000 3.703e+00 -5.568e+00 324.025 3.156e+00 177.171 1.478e+01
56.000 0.000 3.370e+00 -5.574e+00 324.687 2.778e+00 177.952 1.445e+01
57.000 0.000 2.998e+00 -5.597e+00 325.360 2.352e+00 178.836 1.408e+01
58.000 0.000 2.585e+00 -5.638e+00 326.045 1.876e+00 179.844 1.366e+01
59.000 0.000 2.129e+00 -5.695e+00 326.743 1.345e+00 181.005 1.319e+01
60.000 0.000 1.628e+00 -5.769e+00 327.454 7.549e-01 182.352 1.266e+01
61.000 0.000 1.080e+00 -5.861e+00 328.179 9.872e-02 183.935 1.207e+01
62.000 0.000 4.841e-01 -5.970e+00 328.921 -6.300e-01 185.817 1.139e+01
63.000 0.000 -1.608e-01 -6.096e+00 329.678 -1.439e+00 188.087 1.063e+01
64.000 0.000 -8.534e-01 -6.240e+00 330.454 -2.337e+00 190.871 9.761e+00
65.000 0.000 -1.590e+00 -6.401e+00 331.248 -3.331e+00 194.346 8.781e+00
66.000 0.000 -2.360e+00 -6.580e+00 332.062 -4.426e+00 198.772 7.674e+00
67.000 0.000 -3.148e+00 -6.777e+00 332.897 -5.616e+00 204.522 6.432e+00
68.000 0.000 -3.921e+00 -6.992e+00 333.755 -6.871e+00 212.111 5.063e+00
69.000 0.000 -4.634e+00 -7.226e+00 334.636 -8.107e+00 222.157 3.614e+00
70.000 0.000 -5.222e+00 -7.477e+00 335.543 -9.148e+00 235.106 2.314e+00
71.000 0.000 -5.618e+00 -7.748e+00 336.477 -9.733e+00 250.545 2.081e+00
72.000 0.000 -5.768e+00 -8.038e+00 337.439 -9.671e+00 266.664 3.405e+00
73.000 0.000 -5.661e+00 -8.347e+00 338.430 -9.022e+00 281.158 5.304e+00
74.000 0.000 -5.333e+00 -8.675e+00 339.453 -8.035e+00 292.820 7.345e+00
75.000 0.000 -4.850e+00 -9.023e+00 340.508 -6.943e+00 301.711 9.380e+00
76.000 0.000 -4.279e+00 -9.391e+00 341.596 -5.879e+00 308.410 1.133e+01
77.000 0.000 -3.678e+00 -9.780e+00 342.719 -4.900e+00 313.506 1.314e+01
78.000 0.000 -3.083e+00 -1.019e+01 343.876 -4.024e+00 317.451 1.479e+01
79.000 0.000 -2.519e+00 -1.062e+01 345.068 -3.250e+00 320.564 1.627e+01
80.000 0.000 -1.999e+00 -1.107e+01 346.295 -2.573e+00 323.063 1.757e+01
81.000 0.000 -1.529e+00 -1.154e+01 347.556 -1.986e+00 325.102 1.871e+01
82.000 0.000 -1.114e+00 -1.203e+01 348.847 -1.481e+00 326.788 1.970e+01
83.000 0.000 -7.527e-01 -1.254e+01 350.165 -1.050e+00 328.196 2.055e+01
84.000 0.000 -4.458e-01 -1.308e+01 351.504 -6.895e-01 329.383 2.129e+01
85.000 0.000 -1.924e-01 -1.363e+01 352.856 -3.937e-01 330.389 2.194e+01
86.000 0.000 8.526e-03 -1.421e+01 354.209 -1.592e-01 331.245 2.251e+01
87.000 0.000 1.576e-01 -1.480e+01 355.550 1.681e-02 331.973 2.302e+01
88.000 0.000 2.554e-01 -1.542e+01 356.857 1.363e-01 332.590 2.348e+01
89.000 0.000 3.021e-01 -1.606e+01 358.104 2.004e-01 333.109 2.391e+01
90.000 0.000 2.973e-01 -1.671e+01 359.257 2.099e-01 333.540 2.431e+01
91.000 0.000 2.404e-01 -1.738e+01 0.274 1.646e-01 333.887 2.471e+01
92.000 0.000 1.299e-01 -1.807e+01 1.100 6.370e-02 334.154 2.511e+01
93.000 0.000 -3.597e-02 -1.877e+01 1.668 -9.448e-02 334.342 2.553e+01
94.000 0.000 -2.601e-01 -1.948e+01 1.893 -3.123e-01 334.450 2.598e+01
95.000 0.000 -5.460e-01 -2.020e+01 1.676 -5.933e-01 334.471 2.648e+01
96.000 0.000 -8.986e-01 -2.091e+01 0.900 -9.421e-01 334.398 2.704e+01
97.000 0.000 -1.324e+00 -2.160e+01 359.438 -1.365e+00 334.217 2.771e+01
98.000 0.000 -1.830e+00 -2.224e+01 357.164 -1.870e+00 333.907 2.851e+01
99.000 0.000 -2.427e+00 -2.281e+01 353.980 -2.467e+00 333.439 2.951e+01
100.000 0.000 -3.130e+00 -2.326e+01 349.861 -3.172e+00 332.767 3.080e+01
101.000 0.000 -3.955e+00 -2.355e+01 344.904 -4.003e+00 331.824 3.254e+01
102.000 0.000 -4.928e+00 -2.363e+01 339.361 -4.987e+00 330.499 3.500e+01
103.000 0.000 -6.082e+00 -2.348e+01 333.615 -6.162e+00 328.613 3.866e+01
104.000 0.000 -7.460e+00 -2.311e+01 328.087 -7.580e+00 325.841 4.000e+01
105.000 0.000 -9.118e+00 -2.255e+01 323.118 -9.319e+00 321.561 4.000e+01
106.000 0.000 -1.110e+01 -2.186e+01 318.904 -1.148e+01 314.454 3.334e+01
107.000 0.000 -1.332e+01 -2.109e+01 315.499 -1.412e+01 301.463 2.079e+01
108.000 0.000 -1.511e+01 -2.026e+01 312.857 -1.670e+01 276.378 1.051e+01
109.000 0.000 -1.498e+01 -1.942e+01 310.884 -1.692e+01 239.544 3.846e+00
110.000 0.000 -1.298e+01 -1.859e+01 309.470 -1.438e+01 211.779 4.381e+00
111.000 0.000 -1.059e+01 -1.777e+01 308.511 -1.152e+01 197.210 7.200e+00
112.000 0.000 -8.451e+00 -1.697e+01 307.914 -9.109e+00 189.352 9.354e+00
113.000 0.000 -6.633e+00 -1.621e+01 307.606 -7.141e+00 184.670 1.093e+01
114.000 0.000 -5.091e+00 -1.548e+01 307.523 -5.508e+00 181.644 1.211e+01
115.000 0.000 -3.769e+00 -1.478e+01 307.616 -4.127e+00 179.572 1.302e+01
116.000 0.000 -2.623e+00 -1.411e+01 307.848 -2.943e+00 178.092 1.373e+01
117.000 0.000 -1.620e+00 -1.347e+01 308.187 -1.913e+00 177.005 1.430e+01
118.000 0.000 -7.349e-01 -1.287e+01 308.609 -1.009e+00 176.192 1.476e+01
119.000 0.000 5.002e-02 -1.229e+01 309.095 -2.110e-01 175.576 1.513e+01
120.000 0.000 7.493e-01 -1.175e+01 309.631 4.977e-01 175.108 1.544e+01
121.000 0.000 1.374e+00 -1.123e+01 310.205 1.129e+00 174.755 1.570e+01
122.000 0.000 1.933e+00 -1.074e+01 310.808 1.692e+00 174.491 1.591e+01
123.000 0.000 2.433e+00 -1.028e+01 311.432 2.194e+00 174.302 1.608e+01
124.000 0.000 2.879e+00 -9.842e+00 312.072 2.640e+00 174.172 1.623e+01
125.000 0.000 3.276e+00 -9.430e+00 312.724 3.037e+00 174.095 1.634e+01
126.000 0.000 3.629e+00 -9.043e+00 313.384 3.387e+00 174.061 1.644e+01
127.000 0.000 3.939e+00 -8.678e+00 314.050 3.694e+00 174.067 1.650e+01
128.000 0.000 4.210e+00 -8.336e+00 314.719 3.961e+00 174.108 1.655e+01
129.000 0.000 4.443e+00 -8.016e+00 315.391 4.189e+00 174.182 1.659e+01
130.000 0.000 4.640e+00 -7.718e+00 316.064 4.380e+00 174.286 1.660e+01
131.000 0.000 4.804e+00 -7.440e+00 316.737 4.536e+00 174.418 1.660e+01
132.000 0.000 4.934e+00 -7.183e+00 317.410 4.658e+00 174.580 1.658e+01
133.000 0.000 5.032e+00 -6.945e+00 318.082 4.747e+00 174.769 1.655e+01
134.000 0.000 5.098e+00 -6.727e+00 318.754 4.803e+00 174.986 1.650e+01
135.000 0.000 5.134e+00 -6.528e+00 319.425 4.827e+00 175.232 1.643e+01
136.000 0.000 5.139e+00 -6.348e+00 320.096 4.819e+00 175.509 1.635e+01
137.000 0.000 5.114e+00 -6.185e+00 320.766 4.779e+00 175.817 1.625e+01
138.000 0.000 5.058e+00 -6.041e+00 321.436 4.707e+00 176.160 1.613e+01
139.000 0.000 4.972e+00 -5.915e+00 322.106 4.602e+00 176.540 1.599e+01
140.000 0.000 4.855e+00 -5.806e+00 322.777 4.465e+00 176.961 1.583e+01
141.000 0.000 4.706e+00 -5.714e+00 323.448 4.293e+00 177.427 1.565e+01
142.000 0.000 4.526e+00 -5.639e+00 324.121 4.087e+00 177.944 1.545e+01
143.000 0.000 4.314e+00 -5.582e+00 324.795 3.845e+00 178.518 1.522e+01
144.000 0.000 4.068e+00 -5.541e+00 325.472 3.565e+00 179.158 1.496e+01
145.000 0.000 3.787e+00 -5.517e+00 326.152 3.245e+00 179.875 1.467e+01
146.000 0.000 3.471e+00 -5.509e+00 326.834 2.884e+00 180.680 1.434e+01
147.000 0.000 3.118e+00 -5.518e+00 327.521 2.479e+00 181.590 1.397e+01
148.000 0.000 2.727e+00 -5.544e+00 328.212 2.026e+00 182.625 1.355e+01
149.000 0.000 2.295e+00 -5.586e+00 328.907 1.523e+00 183.812 1.309e+01
150.000 0.000 1.822e+00 -5.645e+00 329.608 9.641e-01 185.184 1.256e+01
151.000 0.000 1.306e+00 -5.720e+00 330.314 3.455e-01 186.784 1.197e+01
152.000 0.000 7.456e-01 -5.812e+00 331.027 -3.387e-01 188.673 1.130e+01
153.000 0.000 1.414e-01 -5.920e+00 331.747 -1.094e+00 190.931 1.055e+01
154.000 0.000 -5.055e-01 -6.045e+00 332.475 -1.928e+00 193.665 9.707e+00
155.000 0.000 -1.191e+00 -6.187e+00 333.210 -2.844e+00 197.030 8.756e+00
156.000 0.000 -1.907e+00 -6.346e+00 333.953 -3.844e+00 201.239 7.687e+00
157.000 0.000 -2.639e+00 -6.523e+00 334.706 -4.923e+00 206.585 6.494e+00
158.000 0.000 -3.363e+00 -6.716e+00 335.468 -6.055e+00 213.463 5.173e+00
159.000 0.000 -4.040e+00 -6.927e+00 336.239 -7.177e+00 222.331 3.743e+00
160.000 0.000 -4.621e+00 -7.155e+00 337.020 -8.167e+00 233.554 2.299e+00
161.000 0.000 -5.049e+00 -7.401e+00 337.811 -8.836e+00 246.997 1.440e+00
162.000 0.000 -5.275e+00 -7.666e+00 338.613 -9.009e+00 261.589 2.403e+00
163.000 0.000 -5.276e+00 -7.948e+00 339.424 -8.653e+00 275.581 4.175e+00
164.000 0.000 -5.067e+00 -8.249e+00 340.244 -7.912e+00 287.593 6.122e+00
165.000 0.000 -4.693e+00 -8.569e+00 341.074 -6.981e+00 297.209 8.100e+00
166.000 0.000 -4.210e+00 -8.908e+00 341.911 -6.008e+00 304.681 1.004e+01
167.000 0.000 -3.673e+00 -9.266e+00 342.756 -5.075e+00 310.466 1.190e+01
168.000 0.000 -3.122e+00 -9.644e+00 343.604 -4.217e+00 314.986 1.364e+01
169.000 0.000 -2.585e+00 -1.004e+01 344.455 -3.445e+00 318.567 1.526e+01
170.000 0.000 -2.079e+00 -1.046e+01 345.304 -2.761e+00 321.449 1.674e+01
171.000 0.000 -1.615e+00 -1.089e+01 346.148 -2.160e+00 323.800 1.809e+01
172.000 0.000 -1.197e+00 -1.135e+01 346.980 -1.638e+00 325.743 1.932e+01
173.000 0.000 -8.289e-01 -1.183e+01 347.793 -1.188e+00 327.365 2.042e+01
174.000 0.000 -5.108e-01 -1.233e+01 348.578 -8.064e-01 328.732 2.143e+01
175.000 0.000 -2.429e-01 -1.285e+01 349.323 -4.882e-01 329.890 2.236e+01
176.000 0.000 -2.485e-02 -1.338e+01 350.014 -2.301e-01 330.876 2.321e+01
177.000 0.000 1.437e-01 -1.394e+01 350.633 -2.931e-02 331.716 2.401e+01
178.000 0.000 2.632e-01 -1.451e+01 351.157 1.161e-01 332.431 2.476e+01
179.000 0.000 3.336e-01 -1.511e+01 351.559 2.077e-01 333.037 2.550e+01
180.000 0.000 3.549e-01 -1.571e+01 351.805 2.461e-01 333.544 2.624e+01
179.000 180.000 3.263e-01 -1.633e+01 171.858 2.316e-01 153.961 2.698e+01
178.000 180.000 2.469e-01 -1.696e+01 171.669 1.635e-01 154.293 2.777e+01
177.000 180.000 1.150e-01 -1.759e+01 171.184 4.077e-02 154.543 2.863e+01
176.000 180.000 -7.152e-02 -1.822e+01 170.343 -1.386e-01 154.711 2.959e+01
175.000 180.000 -3.158e-01 -1.883e+01 169.084 -3.774e-01 154.793 3.072e+01
174.000 180.000 -6.216e-01 -1.941e+01 167.348 -6.794e-01 154.785 3.209e+01
173.000 180.000 -9.939e-01 -1.994e+01 165.089 -1.050e+00 154.675 3.386e+01
172.000 180.000 -1.439e+00 -2.040e+01 162.289 -1.495e+00 154.449 3.632e+01
171.000 180.000 -1.966e+00 -2.077e+01 158.977 -2.024e+00 154.083 4.000e+01
170.000 180.000 -2.585e+00 -2.101e+01 155.242 -2.648e+00 153.544 4.000e+01
169.000 180.000 -3.309e+00 -2.112e+01 151.231 -3.382e+00 152.781 4.000e+01
168.000 180.000 -4.158e+00 -2.107e+01 147.143 -4.247e+00 151.715 3.897e+01
167.000 180.000 -5.154e+00 -2.088e+01 143.183 -5.272e+00 150.221 3.408e+01
166.000 180.000 -6.330e+00 -2.056e+01 139.535 -6.497e+00 148.086 3.094e+01
165.000 180.000 -7.721e+00 -2.012e+01 136.327 -7.978e+00 144.927 2.915e+01
164.000 180.000 -9.365e+00 -1.961e+01 133.625 -9.797e+00 139.996 2.976e+01
163.000 180.000 -1.125e+01 -1.903e+01 131.439 -1.205e+01 131.675 4.000e+01
162.000 180.000 -1.316e+01 -1.841e+01 129.742 -1.470e+01 116.290 1.936e+01
161.000 180.000 -1.429e+01 -1.778e+01 128.486 -1.687e+01 87.803 8.681e+00
160.000 180.000 -1.366e+01 -1.714e+01 127.612 -1.625e+01 52.171 2.404e+00
159.000 180.000 -1.176e+01 -1.649e+01 127.061 -1.354e+01 28.436 3.238e+00
158.000 180.000 -9.642e+00 -1.586e+01 126.778 -1.083e+01 15.925 6.077e+00
157.000 180.000 -7.716e+00 -1.524e+01 126.714 -8.561e+00 8.938 8.213e+00
156.000 180.000 -6.048e+00 -1.464e+01 126.828 -6.695e+00 4.653 9.824e+00
155.000 180.000 -4.611e+00 -1.405e+01 127.084 -5.135e+00 1.825 1.107e+01
154.000 180.000 -3.366e+00 -1.349e+01 127.454 -3.810e+00 359.854 1.207e+01
153.000 180.000 -2.277e+00 -1.294e+01 127.913 -2.666e+00 358.427 1.287e+01
152.000 180.000 -1.318e+00 -1.242e+01 128.441 -1.669e+00 357.366 1.353e+01
151.000 180.000 -4.683e-01 -1.192e+01 129.024 -7.907e-01 356.562 1.409e+01
150.000 180.000 2.884e-01 -1.144e+01 129.648 -1.328e-02 355.946 1.455e+01
149.000 180.000 9.645e-01 -1.099e+01 130.302 6.782e-01 355.471 1.495e+01
148.000 180.000 1.570e+00 -1.055e+01 130.980 1.295e+00 355.105 1.529e+01
147.000 180.000 2.112e+00 -1.014e+01 131.674 1.846e+00 354.827 1.558e+01
146.000 180.000 2.598e+00 -9.747e+00 132.380 2.337e+00 354.620 1.583e+01
145.000 180.000 3.032e+00 -9.375e+00 133.092 2.775e+00 354.472 1.605e+01
144.000 180.000 3.419e+00 -9.024e+00 133.810 3.164e+00 354.374 1.623e+01
143.000 180.000 3.762e+00 -8.693e+00 134.529 3.508e+00 354.319 1.639e+01
142.000 180.000 4.064e+00 -8.382e+00 135.248 3.809e+00 354.302 1.652e+01
141.000 180.000 4.327e+00 -8.091e+00 135.966 4.070e+00 354.320 1.663e+01
140.000 180.000 4.553e+00 -7.819e+00 136.682 4.294e+00 354.370 1.672e+01
139.000 180.000 4.744e+00 -7.565e+00 137.395 4.481e+00 354.449 1.679e+01
138.000 180.000 4.901e+00 -7.331e+00 138.106 4.633e+00 354.557 1.684e+01
137.000 180.000 5.025e+00 -7.115e+00 138.814 4.751e+00 354.692 1.688e+01
136.000 180.000 5.117e+00 -6.917e+00 139.519 4.837e+00 354.854 1.690e+01
135.000 180.000 5.178e+00 -6.737e+00 140.222 4.889e+00 355.044 1.690e+01
134.000 180.000 5.208e+00 -6.575e+00 140.922 4.910e+00 355.263 1.688e+01
133.000 180.000 5.207e+00 -6.431e+00 141.621 4.899e+00 355.511 1.684e+01
132.000 180.000 5.176e+00 -6.304e+00 142.319 4.855e+00 355.791 1.679e+01
131.000 180.000 5.114e+00 -6.194e+00 143.016 4.780e+00 356.104 1.672e+01
130.000 180.000 5.020e+00 -6.102e+00 143.713 4.671e+00 356.453 1.662e+01
129.000 180.000 4.896e+00 -6.026e+00 144.410 4.530e+00 356.843 1.651e+01
128.000 180.000 4.739e+00 -5.968e+00 145.110 4.354e+00 357.277 1.637e+01
127.000 180.000 4.550e+00 -5.926e+00 145.812 4.143e+00 357.760 1.621e+01
126.000 180.000 4.328e+00 -5.901e+00 146.517 3.895e+00 358.301 1.602e+01
125.000 180.000 4.071e+00 -5.893e+00 147.226 3.609e+00 358.907 1.579e+01
124.000 180.000 3.777e+00 -5.902e+00 147.941 3.283e+00 359.588 1.554e+01
123.000 180.000 3.447e+00 -5.928e+00 148.662 2.914e+00 0.357 1.524e+01
122.000 180.000 3.077e+00 -5.971e+00 149.389 2.499e+00 1.231 1.490e+01
121.000 180.000 2.666e+00 -6.030e+00 150.125 2.036e+00 2.230 1.451e+01
120.000 180.000 2.212e+00 -6.107e+00 150.871 1.520e+00 3.380 1.407e+01
119.000 180.000 1.713e+00 -6.200e+00 151.627 9.467e-01 4.717 1.356e+01
118.000 180.000 1.166e+00 -6.311e+00 152.394 3.105e-01 6.286 1.298e+01
117.000 180.000 5.697e-01 -6.439e+00 153.175 -3.946e-01 8.150 1.231e+01
116.000 180.000 -7.715e-02 -6.585e+00 153.970 -1.176e+00 10.391 1.155e+01
115.000 180.000 -7.746e-01 -6.748e+00 154.781 -2.040e+00 13.128 1.067e+01
114.000 180.000 -1.520e+00 -6.929e+00 155.610 -2.994e+00 16.526 9.669e+00
113.000 180.000 -2.305e+00 -7.128e+00 156.457 -4.040e+00 20.820 8.525e+00
112.000 180.000 -3.115e+00 -7.345e+00 157.325 -5.174e+00 26.343 7.224e+00
111.000 180.000 -3.921e+00 -7.581e+00 158.215 -6.367e+00 33.547 5.757e+00
110.000 180.000 -4.678e+00 -7.836e+00 159.129 -7.546e+00 42.968 4.122e+00
109.000 180.000 -5.321e+00 -8.110e+00 160.069 -8.565e+00 55.017 2.354e+00
108.000 180.000 -5.773e+00 -8.403e+00 161.036 -9.201e+00 69.445 8.332e-01
107.000 180.000 -5.971e+00 -8.716e+00 162.033 -9.264e+00 84.843 2.035e+00
106.000 180.000 -5.892e+00 -9.048e+00 163.061 -8.761e+00 99.160 4.112e+00
105.000 180.000 -5.570e+00 -9.401e+00 164.122 -7.890e+00 111.051 6.247e+00
104.000 180.000 -5.073e+00 -9.775e+00 165.218 -6.870e+00 120.323 8.335e+00
103.000 180.000 -4.478e+00 -1.017e+01 166.350 -5.843e+00 127.404 1.032e+01
102.000 180.000 -3.846e+00 -1.058e+01 167.521 -4.881e+00 132.829 1.215e+01
101.000 180.000 -3.221e+00 -1.102e+01 168.729 -4.009e+00 137.043 1.383e+01
100.000 180.000 -2.627e+00 -1.148e+01 169.977 -3.233e+00 140.372 1.533e+01
99.000 180.000 -2.079e+00 -1.196e+01 171.264 -2.550e+00 143.046 1.667e+01
98.000 180.000 -1.584e+00 -1.246e+01 172.588 -1.954e+00 145.228 1.786e+01
97.000 180.000 -1.144e+00 -1.298e+01 173.947 -1.439e+00 147.032 1.891e+01
96.000 180.000 -7.616e-01 -1.353e+01 175.335 -9.976e-01 148.541 1.983e+01
95.000 180.000 -4.347e-01 -1.410e+01 176.747 -6.257e-01 149.814 2.066e+01
94.000 180.000 -1.625e-01 -1.468e+01 178.172 -3.185e-01 150.896 2.139e+01
93.000 180.000 5.613e-02 -1.530e+01 179.596 -7.241e-02 151.820 2.206e+01
92.000 180.000 2.221e-01 -1.593e+01 181.001 1.154e-01 152.612 2.267e+01
91.000 180.000 3.362e-01 -1.658e+01 182.359 2.469e-01 153.291 2.323e+01
90.000 180.000 3.987e-01 -1.725e+01 183.639 3.235e-01 153.871 2.377e+01
89.000 180.000 4.095e-01 -1.795e+01 184.796 3.456e-01 154.363 2.430e+01
88.000 180.000 3.680e-01 -1.866e+01 185.775 3.133e-01 154.775 2.482e+01
87.000 180.000 2.731e-01 -1.939e+01 186.504 2.258e-01 155.112 2.535e+01
86.000 180.000 1.229e-01 -2.013e+01 186.892 8.170e-02 155.377 2.590e+01
85.000 180.000 -8.513e-02 -2.088e+01 186.831 -1.214e-01 155.571 2.651e+01
84.000 180.000 -3.544e-01 -2.163e+01 186.188 -3.869e-01 155.693 2.718e+01
83.000 180.000 -6.895e-01 -2.237e+01 184.810 -7.191e-01 155.737 2.796e+01
82.000 180.000 -1.096e+00 -2.307e+01 182.539 -1.124e+00 155.695 2.889e+01
81.000 180.000 -1.583e+00 -2.370e+01 179.236 -1.610e+00 155.554 3.006e+01
80.000 180.000 -2.159e+00 -2.421e+01 174.834 -2.186e+00 155.294 3.158e+01
79.000 180.000 -2.838e+00 -2.454e+01 169.415 -2.868e+00 154.886 3.374e+01
78.000 180.000 -3.639e+00 -2.464e+01 163.262 -3.673e+00 154.281 3.716e+01
77.000 180.000 -4.585e+00 -2.447e+01 156.843 -4.629e+00 153.407 4.000e+01
76.000 180.000 -5.710e+00 -2.405e+01 150.682 -5.774e+00 152.139 4.000e+01
75.000 180.000 -7.062e+00 -2.342e+01 145.200 -7.163e+00 150.257 3.756e+01
74.000 180.000 -8.707e+00 -2.265e+01 140.619 -8.886e+00 147.331 3.276e+01
73.000 180.000 -1.073e+01 -2.179e+01 136.979 -1.108e+01 142.422 3.187e+01
72.000 180.000 -1.317e+01 -2.088e+01 134.202 -1.397e+01 133.108 4.000e+01
71.000 180.000 -1.563e+01 -1.997e+01 132.158 -1.761e+01 112.200 1.543e+01
70.000 180.000 -1.630e+01 -1.907e+01 130.713 -1.956e+01 67.932 4.321e+00
69.000 180.000 -1.426e+01 -1.820e+01 129.743 -1.650e+01 29.287 2.338e+00
68.000 180.000 -1.152e+01 -1.736e+01 129.145 -1.283e+01 12.424 6.300e+00
67.000 180.000 -9.114e+00 -1.655e+01 128.836 -9.978e+00 4.570 8.904e+00
66.000 180.000 -7.118e+00 -1.578e+01 128.751 -7.753e+00 0.255 1.072e+01
65.000 180.000 -5.454e+00 -1.504e+01 128.838 -5.960e+00 357.598 1.205e+01
64.000 180.000 -4.046e+00 -1.435e+01 129.058 -4.471e+00 355.836 1.305e+01
63.000 180.000 -2.836e+00 -1.368e+01 129.379 -3.209e+00 354.606 1.384e+01
62.000 180.000 -1.783e+00 -1.305e+01 129.778 -2.120e+00 353.720 1.448e+01
61.000 180.000 -8.599e-01 -1.246e+01 130.236 -1.171e+00 353.066 1.499e+01
60.000 180.000 -4.351e-02 -1.189e+01 130.739 -3.370e-01 352.579 1.541e+01
59.000 180.000 6.818e-01 -1.136e+01 131.277 4.013e-01 352.215 1.576e+01
58.000 180.000 1.328e+00 -1.085e+01 131.840 1.057e+00 351.944 1.606e+01
57.000 180.000 1.905e+00 -1.037e+01 132.421 1.640e+00 351.747 1.630e+01
56.000 180.000 2.421e+00 -9.922e+00 133.016 2.160e+00 351.610 1.651e+01
55.000 180.000 2.881e+00 -9.497e+00 133.622 2.622e+00 351.522 1.668e+01
54.000 180.000 3.290e+00 -9.097e+00 134.234 3.031e+00 351.475 1.683e+01
53.000 180.000 3.652e+00 -8.720e+00 134.850 3.393e+00 351.464 1.695e+01
52.000 180.000 3.971e+00 -8.368e+00 135.470 3.710e+00 351.485 1.704e+01
51.000 180.000 4.249e+00 -8.038e+00 136.092 3.984e+00 351.535 1.712e+01
50.000 180.000 4.488e+00 -7.729e+00 136.716 4.219e+00 351.611 1.717e+01
49.000 180.000 4.691e+00 -7.443e+00 137.340 4.417e+00 351.712 1.721e+01
48.000 180.000 4.858e+00 -7.177e+00 137.964 4.578e+00 351.837 1.723e+01
47.000 180.000 4.992e+00 -6.931e+00 138.589 4.703e+00 351.986 1.723e+01
46.000 180.000 5.092e+00 -6.705e+00 139.215 4.795e+00 352.158 1.722e+01
45.000 180.000 5.160e+00 -6.499e+00 139.841 4.853e+00 352.354 1.719e+01
44.000 180.000 5.196e+00 -6.311e+00 140.469 4.878e+00 352.575 1.715e+01
43.000 180.000 5.201e+00 -6.142e+00 141.098 4.870e+00 352.822 1.709e+01
42.000 180.000 5.174e+00 -5.992e+00 141.730 4.829e+00 353.097 1.701e+01
41.000 180.000 5.117e+00 -5.859e+00 142.364 4.755e+00 353.402 1.692e+01
40.000 180.000 5.027e+00 -5.744e+00 143.001 4.648e+00 353.739 1.680e+01
39.000 180.000 4.906e+00 -5.647e+00 143.643 4.506e+00 354.113 1.667e+01
38.000 180.000 4.753e+00 -5.567e+00 144.289 4.329e+00 354.527 1.651e+01
37.000 180.000 4.566e+00 -5.504e+00 144.941 4.117e+00 354.986 1.633e+01
36.000 180.000 4.346e+00 -5.459e+00 145.599 3.867e+00 355.497 1.612e+01
35.000 180.000 4.091e+00 -5.430e+00 146.264 3.577e+00 356.067 1.589e+01
34.000 180.000 3.801e+00 -5.417e+00 146.936 3.247e+00 356.706 1.562e+01
33.000 180.000 3.472e+00 -5.422e+00 147.618 2.872e+00 357.426 1.531e+01
32.000 180.000 3.105e+00 -5.443e+00 148.309 2.452e+00 358.243 1.497e+01
31.000 180.000 2.697e+00 -5.480e+00 149.012 1.980e+00 359.175 1.457e+01
30.000 180.000 2.247e+00 -5.534e+00 149.725 1.455e+00 0.247 1.413e+01
29.000 180.000 1.752e+00 -5.605e+00 150.452 8.697e-01 1.493 1.362e+01
28.000 180.000 1.210e+00 -5.692e+00 151.192 2.193e-01 2.955 1.305e+01
27.000 180.000 6.213e-01 -5.796e+00 151.947 -5.037e-01 4.692 1.239e+01
26.000 180.000 -1.658e-02 -5.916e+00 152.717 -1.307e+00 6.787 1.165e+01
25.000 180.000 -7.024e-01 -6.052e+00 153.505 -2.201e+00 9.353 1.080e+01
24.000 180.000 -1.433e+00 -6.206e+00 154.312 -3.193e+00 12.555 9.842e+00
23.000 180.000 -2.200e+00 -6.376e+00 155.138 -4.292e+00 16.635 8.758e+00
22.000 180.000 -2.988e+00 -6.563e+00 155.984 -5.498e+00 21.945 7.544e+00
21.000 180.000 -3.769e+00 -6.766e+00 156.853 -6.792e+00 28.993 6.209e+00
20.000 180.000 -4.501e+00 -6.987e+00 157.745 -8.108e+00 38.446 4.795e+00
19.000 180.000 -5.125e+00 -7.225e+00 158.661 -9.288e+00 50.931 3.444e+00
18.000 180.000 -5.571e+00 -7.480e+00 159.603 -1.006e+01 66.384 2.630e+00
17.000 180.000 -5.784e+00 -7.752e+00 160.572 -1.017e+01 83.194 3.108e+00
16.000 180.000 -5.741e+00 -8.041e+00 161.568 -9.602e+00 98.740 4.580e+00
15.000 180.000 -5.470e+00 -8.347e+00 162.593 -8.617e+00 111.345 6.389e+00
14.000 180.000 -5.030e+00 -8.671e+00 163.647 -7.490e+00 120.896 8.256e+00
13.000 180.000 -4.490e+00 -9.012e+00 164.731 -6.381e+00 128.011 1.006e+01
12.000 180.000 -3.909e+00 -9.371e+00 165.844 -5.362e+00 133.358 1.175e+01
11.000 180.000 -3.327e+00 -9.746e+00 166.985 -4.452e+00 137.453 1.329e+01
10.000 180.000 -2.773e+00 -1.014e+01 168.155 -3.653e+00 140.655 1.467e+01
9.000 180.000 -2.260e+00 -1.055e+01 169.349 -2.957e+00 143.206 1.588e+01
8.000 180.000 -1.797e+00 -1.097e+01 170.565 -2.357e+00 145.275 1.695e+01
7.000 180.000 -1.389e+00 -1.142e+01 171.799 -1.843e+00 146.977 1.788e+01
6.000 180.000 -1.035e+00 -1.188e+01 173.044 -1.409e+00 148.393 1.869e+01
5.000 180.000 -7.376e-01 -1.235e+01 174.292 -1.048e+00 149.583 1.940e+01
4.000 180.000 -4.948e-01 -1.284e+01 175.531 -7.556e-01 150.590 2.002e+01
3.000 180.000 -3.062e-01 -1.334e+01 176.749 -5.277e-01 151.445 2.056e+01
2.000 180.000 -1.715e-01 -1.386e+01 177.927 -3.614e-01 152.172 2.105e+01
1.000 180.000 -9.026e-02 -1.439e+01 179.043 -2.547e-01 152.790 2.149e+01

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2,9 +2,18 @@
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"execution_count": 3,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The autoreload extension is already loaded. To reload it, use:\n",
" %reload_ext autoreload\n"
]
}
],
"source": [
"%load_ext autoreload\n",
"%autoreload 2\n",
@ -33,9 +42,24 @@
},
{
"cell_type": "code",
"execution_count": 2,
"execution_count": 4,
"metadata": {},
"outputs": [],
"outputs": [
{
"ename": "ModuleNotFoundError",
"evalue": "No module named 'numpy.typing'",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[4], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01msimulation\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Simulation, UniformTimeSteps\n\u001b[0;32m 3\u001b[0m \u001b[38;5;66;03m# Construct a time model.\u001b[39;00m\n\u001b[0;32m 4\u001b[0m timesteps \u001b[38;5;241m=\u001b[39m UniformTimeSteps(\u001b[38;5;241m0.1\u001b[39m, mu\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m, sigma\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m, delay_only\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\n",
"File \u001b[1;32mc:\\Users\\Vincent\\Documents\\Projekte\\STA\\STAHR\\SPATZ\\spatz\\__init__.py:7\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mutils\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mutils\u001b[39;00m\n\u001b[0;32m 5\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mutils\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;241m*\u001b[39m\n\u001b[1;32m----> 7\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mtransforms\u001b[39;00m\n\u001b[0;32m 8\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;241m*\u001b[39m\n\u001b[0;32m 10\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mdataset\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;241m*\u001b[39m\n",
"File \u001b[1;32mc:\\Users\\Vincent\\Documents\\Projekte\\STA\\STAHR\\SPATZ\\spatz\\transforms\\__init__.py:1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransform\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Transform\n\u001b[0;32m 2\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mnoise\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m GaussianNoise\n\u001b[0;32m 3\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mspatz\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtransforms\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mfailures\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Downtime\n",
"File \u001b[1;32mc:\\Users\\Vincent\\Documents\\Projekte\\STA\\STAHR\\SPATZ\\spatz\\transforms\\transform.py:3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mnumpy\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mnp\u001b[39;00m\n\u001b[1;32m----> 3\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mnumpy\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mtyping\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m ArrayLike\n\u001b[0;32m 4\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mtyping\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Any, Tuple\n\u001b[0;32m 7\u001b[0m \u001b[38;5;28;01mclass\u001b[39;00m \u001b[38;5;21;01mTransform\u001b[39;00m:\n",
"\u001b[1;31mModuleNotFoundError\u001b[0m: No module named 'numpy.typing'"
]
}
],
"source": [
"from spatz.simulation import Simulation, UniformTimeSteps\n",
"\n",
@ -436,7 +460,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.1"
"version": "3.8.1"
}
},
"nbformat": 4,

View File

@ -2,62 +2,113 @@ from numpy.typing import ArrayLike
from typing import List, AnyStr
from numpy import matrix
from typing import List
import re
from io import StringIO
import numpy as np
import pandas as pd
import math
from spatz.sensors import Sensor
from spatz.transforms import Transform
from spatz.dataset import Dataset
from spatz.logger import Logger
# from spatz.sensors import Sensor
# from spatz.transforms import Transform
# from spatz.dataset import Dataset
# from spatz.logger import Logger
'''
Sensor to simulate TX antenna gain in direction of ground station
You will need to supply a gain pattern in the form of a R^3 matrix in the following form:
Returns the gain in dBi per timestep.
gain_pattern: matrix, groundstation_offset_vector
'''
class GainPattern():
def __init__(self, pattern_file):
self._df = pd.read_csv(pattern_file,delimiter='\t')
print(self._df)
def __init__(self, filepath: str):
# This is a cursed parser. If it breaks, though luck.
with open(filepath,"r") as file:
# Read Header
header = file.readline()
header = re.sub(r'\[(.*?)\]',",",header).replace(" ","").replace(",\n",'\n')
def get_gain(self, phi, theta):
phi_left = round(phi,-1)
phi_right = round(phi ,-1)
# Discard ---- line
file.readline()
theta_left = theta
theta_right = theta
class AntennaTxGain(Sensor):
# Parse to DF
lines = file.readlines()
clean_csv = header
for line in lines:
cleaned = re.sub(r'\s+',',',line).removeprefix(',').removesuffix(',').strip()
clean_csv = clean_csv + cleaned + '\n'
filelike = StringIO(clean_csv)
self._df = pd.read_csv(filelike)
print(self._df.head())
def __init__(self, dataset: Dataset, logger: Logger, transforms: List[Transform] = []):
super().__init__(dataset, logger, transforms)
def _get_data(self) -> ArrayLike | float:
# Get current position of rocket
[x,y,z] = self._dataset.fetch_values(['x', 'y', 'z'])
# Get current rotation of rocket
[pitch,roll,yaw] = self._dataset.fetch_values(['pitch','roll','yaw'])
def __get_gain_internal(self,phi5:float,theta5:float):
assert phi5%5 ==0
assert theta5%5==0
# Calculate angle between the vectors
row = self._df.loc[(self._df["Theta"] == theta5) & (self._df["Phi"] == phi5)].iloc[0]
return row["Abs(Dir.)"]
# Fetch gain in this direction
def get_gain(self, phi, theta) -> float:
assert 0 <= phi <= 180
assert 0 <= theta <= 360
#Interpolate using binlinear interpolation https://en.wikipedia.org/wiki/Bilinear_interpolation
phi_lower = math.floor(phi/5)*5
phi_upper = phi_lower + 5
theta_lower = math.floor(theta/5)*5
theta_upper = theta_lower + 5
return 0
G11 = self.__get_gain_internal(phi_lower,theta_lower)
G12 = self.__get_gain_internal(phi_lower,theta_upper)
G21 = self.__get_gain_internal(phi_upper,theta_lower)
G22 = self.__get_gain_internal(phi_upper,theta_upper)
def _sensor_specific_effects(self, x: ArrayLike) -> ArrayLike:
return x
v1 = np.array([phi_upper-phi,phi-phi_lower])
v2 = np.array([[theta_upper-theta],[theta-theta_lower]])
A = np.array([[G11,G12],[G21,G22]])
interpolated = 1/25 * v1 @ A @ v2
return interpolated[0]
# class AntennaTxGain(Sensor):
# def __init__(self, dataset: Dataset, logger: Logger, transforms: List[Transform] = []):
# super().__init__(dataset, logger, transforms)
# def _get_data(self) -> ArrayLike | float:
# # Get current position of rocket
# [x,y,z] = self._dataset.fetch_values(['x', 'y', 'z'])
# # Get current rotation of rocket
# [pitch,roll,yaw] = self._dataset.fetch_values(['pitch','roll','yaw'])
# # Calculate angle between the vectors
# # Fetch gain in this direction
# return 0
# def _sensor_specific_effects(self, x: ArrayLike) -> ArrayLike:
# return x
def _get_name(self) -> AnyStr:
return 'Generic Antenna TX'
# def _get_name(self) -> AnyStr:
# return 'Generic Antenna TX'
if __name__ == '__main__':
pattern = GainPattern("data/gain_pattern/farfield_all.txt")
print(pattern.get_gain(0,12))
print(pattern.get_gain(0,16))
print(pattern.get_gain(6,12))
print(pattern.get_gain(0,10))

10
testing.py Normal file
View File

@ -0,0 +1,10 @@
from spatz.sensors.antenna.tx_gain import GainPattern
import math
pattern = GainPattern("data/gain_pattern/farfield_all.txt")
# pattern.get_gain(41,66)
# pattern.get_gain(40,100)
# pattern.get_gain(10,180)
# pattern.get_gain(0,95)
# pattern.get_gain(21,100)