Commit Graph

140 Commits

Author SHA1 Message Date
2885ab76c6 typing and comment changes 2022-11-23 12:59:06 +01:00
e5934d9948 Simulation name now also being saved as metadata 2022-11-23 12:55:35 +01:00
8913246600 Reformatted all code 2022-11-23 11:45:44 +01:00
3c27a0cc18 Simulator class now returns pandas dataframe instead of raw data 2022-11-22 17:05:58 +01:00
8599ea9662 Added docstrings and TODOs 2022-11-22 16:46:28 +01:00
37edb9a6e9 Modified main to work with new simulator interface 2022-11-22 16:01:09 +01:00
9beda2231d Modified visualization code to wread metadata 2022-11-21 13:28:00 +01:00
d0ed9ffbaa Renamed sim files and added metadata 2022-11-21 13:02:06 +01:00
5c3dc58c5d Removed spdlog as requirement 2022-11-18 13:35:09 +01:00
2cfbbd529c Automatically save sim results after completion 2022-11-18 13:33:59 +01:00
1485ade538 Changed metadata directory 2022-11-18 13:24:31 +01:00
3b022b33ad Moved de-serialization functions from SimulationManager to SimulationDeSerializer 2022-11-18 13:06:31 +01:00
f6d79cafe7 Fixed merge conflict; WARNGING: Untested 2022-11-16 19:57:18 +01:00
5d14b383af Rewrote main to use SimulationManger 2022-11-16 19:49:37 +01:00
e9faba01d2 Removed unnecessary imports and fixed type hints 2022-11-16 19:47:56 +01:00
6c945e6fa1 Updated requirements.txt 2022-11-16 19:44:30 +01:00
b196515cee Removed TODOs 2022-11-16 19:42:59 +01:00
dd485dfee0 Simulator now returns correct length BERs list no matter the simulation state 2022-11-16 19:42:04 +01:00
e27a86969e Now removing savefile after loading; Properly terminating program on signal sigterm 2022-11-16 19:30:47 +01:00
8098794804 Made Simulator object Picklable 2022-11-16 19:18:16 +01:00
b27093e516 Added progress bars; NOT WORKING - Serialization of progress bars not possible 2022-11-15 17:45:25 +01:00
e9cd215457 Modified the SimulationManager to work with the newly implemented Simulator; Added doc comments 2022-11-15 17:26:14 +01:00
c09e20cce4 Fixed graph spacing; Now calculating figsize depending on the number of row and columns 2022-11-15 16:27:11 +01:00
d9009970ad Implemented proper titles and line labels in visualization.show_BER_curves() 2022-11-15 16:12:28 +01:00
524b57f41c Fixed error in filename 2022-11-15 16:09:06 +01:00
081c4a5288 Merge branch 'main' into feature/proximal_various_codes 2022-11-15 15:34:32 +01:00
b89379aa08 Renamed variable step_size to omega 2022-11-15 15:33:32 +01:00
1bc7d2960b Simulated other n=204 code 2022-11-15 15:31:46 +01:00
09acc5b8bc Added alist files for various codes; Added simulation results 2022-11-15 14:24:51 +01:00
c24a36db07 Implemented Simulator 2022-11-15 00:30:27 +01:00
e36ec6c774 Added alist files; Simulated proximal decoder with ldpc code from paper 2022-11-14 20:07:11 +01:00
95c052c918 Resimulated Hamming code 2022-11-14 11:20:06 +01:00
7bbe11e7aa Removed N_max parameter from function call 2022-11-14 11:19:56 +01:00
8f4b7e1fa1 Added rough implementation of Simulator class 2022-11-14 11:12:46 +01:00
9fab9bda68 Removed unused code 2022-11-13 23:55:41 +01:00
b6ec2d3061 Removed unnecessary import 2022-11-13 23:15:00 +01:00
ffcce7b3f2 Renamed utility.simulations to utility.simulation; Implemented first version of the SimulationManager class 2022-11-13 23:14:47 +01:00
3e02dcf17c Removed N_max from simulations.test_decoder() 2022-11-11 21:24:56 +01:00
0f8de32e3f Fixed bugs in visualization.show_BER_curves 2022-11-11 17:38:15 +01:00
6105eef4c1 Properly implemented visualization._get_num_rows() and added unit tests 2022-11-11 15:33:29 +01:00
fad296f759 Finished first rough implementation of show_BER_curves() 2022-11-10 13:05:13 +01:00
2fae3ba3be Made main.py work with the new simulation functions 2022-11-10 12:19:01 +01:00
f791a9a086 Fixed noise variance calculation 2022-11-10 11:43:04 +01:00
20049e55f0 Removed confusion relating to n and k 2022-11-10 11:27:29 +01:00
df94fb33b6 Changed test_decoder() to get n and k as arguments; Reimplemented test_decoders() in utility.simulations 2022-11-10 11:21:39 +01:00
a6baad0201 Comment changes 2022-11-10 10:24:24 +01:00
a6849a1f7d changed test_decoder() to accept target frame errors instead of bit errors 2022-11-10 10:21:57 +01:00
bef9c8ee3a Removed TODOs; Formatting; Changed test_decoder() default SNR array 2022-11-10 10:04:31 +01:00
23e318609c Fixed usages of x, x_hat, y 2022-11-10 09:59:41 +01:00
70bbe08bc4 Fixed usage of n and k 2022-11-10 09:52:21 +01:00
f29c2e71de Renamed naive soft decision to maximum likelihood; Removed reference to R matrix 2022-11-10 08:43:54 +01:00
5865a8683f Removed references to the R-Matrix; Comment changes 2022-11-10 08:37:13 +01:00
3a178f2d35 Now calculating the error rate based on the codewrords, not datawords 2022-11-08 20:03:48 +01:00
4e0fcbcec8 Added simulations results 2022-11-08 19:33:56 +01:00
bb31b53d98 Added TODOs 2022-11-08 19:13:51 +01:00
6fc01b20ff Restructured main.py 2022-11-08 19:10:51 +01:00
d8258a36f6 Changed main.py to work with new utility.codes 2022-11-08 12:57:43 +01:00
b4623580af Removed Codes enum; Added functions for H and R matrix generation and unit tests 2022-11-08 12:57:08 +01:00
70c99d2475 Added G matrices of various codes and alist matrix gen code 2022-11-08 00:53:08 +01:00
781ae1442d Reorganized 'utility' into own package 2022-11-08 00:52:43 +01:00
bbd9d9037b Changed progress bar behaviour 2022-11-07 20:15:04 +01:00
367901b0d4 Removed TODO 2022-11-07 19:40:06 +01:00
2002b1faa8 Added proper unit tests for gradient calculation 2022-11-07 19:38:41 +01:00
97acaaafd3 Reimplemented gradient computation with more numpy builtin functions 2022-11-07 19:37:46 +01:00
b7c4b4e359 Changed default proximal decoder parameters 2022-11-07 15:35:15 +01:00
e6a7c39f50 Added timer and changed simulation params 2022-11-07 15:34:39 +01:00
9348689292 Changed the way the codewords are mapped onto [0, 1]^n 2022-11-07 15:02:55 +01:00
6af243efba Replaced manual calculation with builtin numpy functions 2022-11-07 14:49:05 +01:00
cbb6036beb Added unit tests for the calculation of the A nd B sets; Fixed broken unit tests 2022-11-07 14:39:09 +01:00
d129a222bc Moved calculation of A and B sets from ProximalDecoder::_grad_h() to ProximalDecoder::__init__() 2022-11-07 14:38:30 +01:00
296feaf1fb Simulating more parameters for proximal decoding; Changed theme 2022-11-07 14:09:00 +01:00
dcb78a3963 Fixed bug in BER calculation 2022-11-07 14:08:05 +01:00
323b103d6f Proximal decoder now return the decoded dataword instead of the codeword 2022-11-07 14:07:46 +01:00
3e7dd37827 Now using an R matrix for decoding in the soft decision decoder 2022-11-07 13:59:13 +01:00
0ea297ad45 Made the way simulations are done and plotted more scalable 2022-11-07 12:10:06 +01:00
cc855b8941 Formatting 2022-11-07 11:56:12 +01:00
2c620a77df Added Encoder class and modified interface of utility.test_decoder() 2022-11-07 11:54:28 +01:00
26fa791872 Added unit tests for soft decision decoder 2022-11-07 11:26:34 +01:00
c90cddf30b Replaced for loop with builtin numpy function 2022-11-07 11:07:39 +01:00
2f1497b1b8 Comment and formatting changes 2022-11-07 11:07:24 +01:00
78fd8bf95c Implemented naive soft decision decoder 2022-11-07 10:58:35 +01:00
04eaea92a1 Changed target_bit_errors and N_max for simulation 2022-11-07 00:46:21 +01:00
01d4cf22aa Fixed signal amplitude necessary for noise amp calculation 2022-11-07 00:43:23 +01:00
be6ded2162 Fixed SNR amplitude; Fixed BER calculation 2022-11-07 00:32:54 +01:00
74ee1cc4db Fixed [0, 1] and [-1, 1] issue; comments; stopping simulation after n bit errors 2022-11-07 00:32:31 +01:00
2c16e2c2a3 Implemented projection; Added TODOs and fixed docstrings 2022-11-04 22:05:16 +01:00
01bc41b8c5 Fixed gradient unit test 2022-11-04 21:35:20 +01:00
bf469afbd1 Added requirements.txt and instructions for running to README 2022-11-04 21:32:07 +01:00
6444914296 Finished initial (non-working) implementation of proximal decoder 2022-11-04 21:08:41 +01:00
2217f62253 Added SW readme and latex build files 2022-10-25 17:24:35 +02:00