horusdemodlib/src/H_128_384_23.c

23 wiersze
15 KiB
C

/*
FILE....: H_128_384_23.c
Static arrays for LDPC codec H_128_384_23, generated by ldpc_gen_c_h_file.m.
*/
#include <stdint.h>
#include "H_128_384_23.h"
const uint16_t H_128_384_23_H_rows[] = {
90, 34, 13, 29, 48, 14, 87, 63, 32, 85, 18, 61, 62, 6, 37, 9, 50, 51, 12, 91, 27, 28, 56, 10, 8, 92, 17, 13, 9, 3, 67, 54, 119, 51, 82, 7, 26, 20, 1, 60, 6, 12, 7, 87, 3, 2, 76, 47, 25, 26, 22, 16, 23, 17, 13, 46, 66, 24, 62, 41, 40, 64, 15, 28, 51, 93, 49, 25, 73, 31, 22, 33, 102, 61, 29, 42, 37, 30, 9, 45, 88, 54, 44, 63, 105, 44, 93, 10, 7, 8, 28, 20, 24, 47, 18, 44, 16, 4, 5, 11, 70, 4, 71, 6, 2, 19, 6, 13, 3, 63, 13, 60, 20, 12, 42, 68, 45, 11, 5, 7, 55, 22, 15, 10, 62, 19, 5, 15, 37, 28, 1, 33, 23, 39, 55, 78, 17, 58, 21, 67, 81, 83, 65, 7, 86, 30, 21, 71, 36, 18, 35, 17, 34, 77, 14, 11, 4, 31, 11, 69, 22, 61, 9, 38, 1, 32, 34, 21, 16, 26, 42, 39, 111, 53, 38, 40, 17, 8, 14, 9, 19, 78, 72, 4, 89, 15, 101, 56, 80, 23, 41, 23, 58, 39, 4, 84, 5, 32, 43, 37, 55, 59, 2, 71, 25, 71, 3, 65, 30, 3, 69, 30, 2, 29, 10, 81, 12, 1, 5, 40, 16, 46, 28, 20, 8, 74, 29, 47, 15, 29, 21, 56, 27, 61, 65, 33, 45, 65, 44, 31, 107, 2, 31, 1, 41, 36, 77, 83, 91, 14, 18, 82, 86, 27, 35, 10, 107, 39, 72, 74, 64, 18, 99, 123, 99, 89, 42, 121, 111, 68, 114, 84, 63, 96, 48, 98, 79, 32, 110, 48, 35, 102, 109, 67, 22, 85, 68, 66, 122, 114, 87, 70, 79, 65, 122, 124, 31, 77, 59, 109, 115, 19, 106, 75, 80, 38, 25, 108, 127, 36, 97, 49, 116, 97, 75, 121, 88, 83, 86, 41, 57, 99, 96, 112, 102, 40, 70, 39, 111, 95, 119, 78, 84, 53, 81, 54, 90, 59, 46, 76, 118, 82, 105, 77, 25, 26, 52, 95, 49, 52, 112, 85, 58, 75, 42, 26, 75, 47, 104, 8, 27, 62, 11, 23, 43, 82, 49, 116, 67, 24, 57, 108, 75, 38, 6, 45, 73, 81, 96, 53, 73, 79, 90, 43, 48, 74, 12, 35, 115, 126, 56, 94, 50, 125, 101, 117, 94, 95, 67, 84, 96, 34, 57, 118, 48, 94, 76, 64, 119, 83, 16, 100, 73, 128, 68, 73, 32, 120, 94, 69, 20, 103, 41, 24, 103, 68, 88, 87, 117, 106, 79, 43, 34, 38, 58, 52, 45, 90, 102, 19, 93, 57, 112, 82, 113, 49, 50, 24, 100, 50, 56, 98, 78, 74, 126, 66, 72, 101, 113, 72, 37, 92, 46, 92, 33, 55, 113, 36, 54, 61, 36, 98, 114, 104, 14, 76, 95, 72, 110, 58, 27, 125, 95, 70, 46, 109, 98, 85, 33, 103, 100, 60, 47, 120, 55, 43, 124, 30, 35, 97, 89, 53, 127, 97, 128, 81, 21, 85, 123, 60, 123, 64, 0, 0, 0, 103, 122, 91, 110, 0, 0, 0, 0, 0, 0, 90, 0, 112, 0, 0, 0, 0, 124, 109, 0, 59, 40, 0, 121, 92, 74, 0, 100, 80, 0, 0, 0, 80, 0, 97, 0, 0, 88, 101, 66, 0, 0, 60, 0, 110, 0, 102, 84, 0, 0, 119, 0, 0, 0, 104, 0, 0, 0, 0, 88, 99, 91, 0, 115, 0, 0, 107, 0, 63, 118, 122, 121, 91, 101, 116, 103, 116, 128, 0, 0, 126, 0, 0, 0, 0, 52, 107, 70, 0, 0, 0, 0, 123, 120, 93, 128, 117, 0, 0, 0, 0, 0, 69, 107, 104, 44, 89, 71, 0, 0, 0, 96, 0, 113, 0, 0, 0, 111, 0, 128, 0, 105, 0, 100, 0, 77, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 120, 104, 0, 0, 50, 0, 0, 0, 98, 124, 0, 0, 122, 94, 0, 0, 0, 92, 79, 52, 0, 0, 0, 120, 0, 109, 127, 0, 0, 0, 89, 0, 0, 111, 123, 53, 124, 78, 0, 0, 0, 117, 113, 110, 0, 114, 93, 0, 57, 87, 51, 0, 106, 62, 0, 108, 121, 0, 0, 0, 0, 116, 115, 59, 117, 86, 0, 0, 118, 0, 0, 0, 64, 66, 112, 127, 0, 0, 0, 125, 118, 0, 108, 0, 0, 0, 99, 115, 0, 114, 105, 76, 125, 108, 106, 80, 0, 105, 86, 0, 106, 0, 127, 0, 54, 0, 0, 0, 0, 51, 126, 0, 69, 126, 119
};
const uint16_t H_128_384_23_H_cols[] = {
39, 46, 30, 98, 99, 14, 36, 25, 16, 24, 100, 19, 3, 6, 63, 52, 27, 6, 46, 38, 139, 29, 53, 58, 49, 37, 21, 22, 4, 78, 41, 9, 72, 2, 25, 54, 15, 50, 2, 25, 60, 11, 109, 83, 80, 56, 48, 5, 56, 17, 18, 89, 78, 32, 121, 23, 65, 97, 24, 40, 12, 13, 8, 5, 38, 32, 28, 14, 106, 36, 103, 3, 69, 4, 48, 47, 42, 76, 21, 32, 79, 35, 62, 16, 10, 63, 7, 41, 10, 1, 6, 26, 66, 136, 74, 18, 38, 20, 7, 31, 42, 26, 4, 58, 85, 47, 1, 52, 22, 7, 13, 16, 117, 15, 45, 57, 100, 73, 33, 97, 12, 5, 8, 21, 138, 84, 53, 81, 131, 105, 45, 102, 119, 41, 43, 90, 29, 88, 107, 42, 28, 155, 123, 97, 54, 11, 106, 92, 147, 51, 108, 93, 51, 50, 105, 64, 75, 146, 70, 22, 132, 146, 132, 149, 77, 118, 72, 61, 64, 76, 128, 86, 117, 83, 94, 19, 67, 137, 34, 91, 124, 80, 135, 135, 115, 138, 43, 46, 74, 59, 17, 62, 143, 43, 31, 31, 160, 71, 111, 183, 121, 29, 59, 84, 88, 136, 37, 36, 122, 86, 131, 51, 30, 145, 35, 61, 110, 14, 20, 28, 87, 141, 92, 67, 55, 150, 9, 127, 77, 50, 79, 103, 87, 174, 70, 116, 27, 23, 73, 68, 184, 34, 67, 78, 140, 85, 54, 142, 27, 33, 96, 40, 141, 134, 168, 99, 165, 203, 109, 157, 127, 104, 89, 104, 79, 124, 118, 114, 55, 179, 128, 155, 137, 95, 126, 113, 168, 71, 133, 114, 68, 90, 225, 91, 214, 209, 158, 161, 209, 153, 151, 212, 129, 164, 134, 70, 167, 99, 176, 96, 120, 207, 102, 24, 93, 146, 65, 94, 174, 82, 201, 188, 147, 179, 82, 112, 162, 106, 72, 152, 208, 57, 113, 116, 164, 91, 148, 201, 125, 130, 98, 151, 129, 179, 126, 49, 141, 110, 142, 77, 96, 207, 44, 63, 172, 81, 65, 159, 98, 150, 142, 115, 58, 196, 64, 156, 139, 69, 166, 108, 125, 194, 90, 197, 44, 48, 121, 95, 189, 187, 133, 80, 173, 148, 75, 162, 60, 39, 176, 151, 221, 199, 217, 123, 218, 213, 207, 184, 197, 107, 120, 178, 163, 215, 156, 131, 108, 219, 186, 169, 152, 150, 181, 165, 231, 122, 190, 168, 89, 100, 233, 130, 227, 212, 240, 166, 233, 167, 243, 215, 200, 175, 172, 176, 191, 115, 199, 109, 181, 222, 228, 129, 111, 191, 192, 161, 177, 213, 210, 195, 186, 193, 202, 236, 214, 125, 84, 214, 235, 200, 140, 159, 211, 101, 204, 204, 157, 198, 101, 220, 154, 182, 160, 189, 216, 188, 154, 144, 232, 240, 172, 81, 185, 127, 76, 206, 185, 155, 221, 123, 244, 216, 66, 193, 187, 73, 169, 143, 232, 236, 107, 224, 167, 185, 173, 187, 203, 217, 204, 112, 183, 210, 153, 165, 75, 74, 253, 178, 226, 252, 244, 158, 244, 242, 210, 195, 219, 119, 144, 225, 180, 256, 159, 217, 111, 250, 229, 221, 177, 251, 184, 224, 251, 161, 192, 192, 205, 170, 254, 223, 230, 242, 243, 198, 236, 177, 255, 246, 205, 178, 194, 220, 245, 171, 240, 239, 237, 229, 237, 149, 190, 194, 251, 180, 246, 246, 239, 232, 190, 224, 205, 254, 234, 195, 110, 256, 238, 215, 143, 170, 254, 228, 206, 222, 160, 226, 117, 233, 247, 197, 175, 237, 250, 252, 248, 196, 252, 253, 191, 171, 245, 182, 249, 208, 188, 163, 227, 145, 248, 231, 228, 235, 202, 183, 234, 218, 239, 242, 241, 235, 230, 223, 175, 216, 211, 231, 229, 203, 206, 222, 256, 238, 198, 154, 255, 241, 234, 255, 247, 249
};
const float H_128_384_23_input[] = {
8.1777347069716182, 11.068275286194897, -9.9432245045443768, 6.6551236271074705, -11.054406713179503, -6.2746575567318477, 7.667712136118686, -2.1922257574847572, -4.8237609670948771, -0.91390703117478189, -11.229258232572455, 1.4857476978815731, 7.3856830024986815, 3.1880549168643748, -10.120957869946404, -10.319425257629057, -11.41562435894356, -12.11927694936889, -9.0469458594649517, 1.7569887284523908, -15.442189230692762, 5.7626102302543432, -7.0612897764013622, 9.8291613428990949, 1.0767498658270371, 9.5856073387990453, 11.738497999320632, -9.0905799174312669, -10.470455080852828, -8.433744390991917, -6.9366856746970376, 13.26849350444494, 7.8070636674612741, -4.6173947833802247, 6.6456048779293422, -0.69263647534317907, -12.49898233313848, 6.6138981803938011, -8.6083023236151668, 15.453324493413819, 15.305896388638827, 7.1884007793243434, -11.740597845156534, 3.7308086480127889, 9.6831143382852893, -10.032320174440107, 11.654225085389784, 5.7804989851977071, -4.7479011487633347, -11.36114342348074, -17.928152449644944, -12.265345238363908, 6.9992004828247651, 15.49309559758461, -10.111696620390044, 0.1122734607649342, -6.6622427130187836, 7.4822113044655758, -7.925242660462505, 5.7467656046075231, -13.401166964099504, -4.1348089534205599, 11.264844498492213, -10.358928566579573, -11.216720153217402, 14.128765772663707, -8.5233957205111377, -9.1103725854592117, 8.0142532964098638, -7.9884310657121853, 0.99693987389979799, -5.1693918629280224, -5.910853810813621, -3.6608188686781928, -6.025229555630097, -2.5758396045091749, 9.9066305949783153, 7.1933649528504615, 8.0541830758014754, 8.8791162477659906, 0.57575820375628539, 2.0598054756647621, -8.003317244521222, 14.315603524511731, 2.1289431008644866, -5.4112513272825309, 7.2618834185352377, -1.9401082084404331, 1.9347336916334354, -12.845137950304331, 18.14330817252943, 11.181919275388029, -13.215961451165805, -8.3376488718859125, 5.3114228917827848, -1.1022969158236802, -2.7846572175961777, -5.463585670181291, 11.492094117831314, -9.302933959252556, 3.3836187096199208, -2.284430926840451, -6.7422039844055712, 10.381365097548491, 3.9262961005324533, -5.2088948529439607, 6.5600092667752907, -12.32451549929036, 4.0508533196564649, 5.0571676348437409, -11.185166289162519, 2.1177386611599283, 1.8632374264281581, -3.0822091330309846, -6.3222229034213875, 9.3955514224688184, 7.5722931465370769, 5.8225996467514722, -11.740091245560546, 13.254263914817818, 10.350606552441441, -4.13177276425861, -2.9055515270006325, -12.275811208362592, 8.7262807637046489, 15.135008327769862, 11.321536392571373, 8.9032604067202499, -5.0162115661089857, -14.366995833786691, 5.8386600312369596, -7.786480442774069, -6.4674600197472838, 11.857120505703504, 11.40089974300462, 9.6456350961814206, 10.130537941536021, 11.699256038881005, -9.7564228899680803, 6.9117571689497206, 15.519061294909973, -6.0315829647195756, -12.097752685154553, 7.7805475289904704, -3.5009655351727784, -12.041177029892658, 6.202834026684636, -9.8015631607525666, 4.1494330009823779, -6.7022057810013225, -8.5897779340618747, -9.6360264972515335, 10.84123650968198, 6.6247990317544909, -8.2231371184139075, 9.2100071306694851, 5.8410835705854502, -9.8465523730928517, 11.550853141012933, 5.2237637811204172, 9.5886545602619915, 8.821453189955804, 10.164314950855546, -6.9162895428275597, -0.99515705414423761, -0.65865377070546172, -2.0720548995423638, -5.751699051592162, 3.3929467907549795, -15.651761881817849, 1.7841459529791761, 9.8067737992082193, 6.5959941284543415, -10.685239406462571, -5.0988497681713829, 11.535671811791712, -3.927802400407173, -9.8136815011221472, 10.463904374444981, 5.2369943474980278, -8.1945701888074058, -2.2074976871592868, -8.2410254863031067, -4.4361001559281146, -6.4484841388698291, 1.1476091117261411, 11.112882158071999, 4.8437001578325232, -7.9066327077789147, -12.797171042579778, 2.645291305889935, -10.513340143073791, -12.409800836289598, 14.647264925728678, -19.259703981144938, 11.837338319296395, -6.8124685495313058, 14.84654495094942, -11.867943417980447, 0.69203449256735483, -11.334005258846348, -14.310695867992383, -8.5521372169311416, -9.1688793096132457, 10.658852517324213, -7.4665258542770596, -0.075811994975017297, -6.0426336621017649, -7.2574644956325169, 12.195709735388878, -17.383436877645277, 11.622429313846098, 5.378252971923124, 7.012775381030548, -4.0444207413344824, 8.2151802910712597, 4.2174063287231265, -6.729981147551837, 6.4674576686109555, 7.3123330030304334, -6.0528241694626495, 13.43295684538702, -13.555949927376236, -3.4182003647017063, 2.16132378213192, 2.9461768739000291, -11.945235376610468, 10.786189702655308, 7.5310740226051562, 5.5471972623473986, 7.9966645710875142, 5.8467489848587011, 7.6610398783261466, 5.0310549754371179, 16.758419583165288, -7.1449786726465687, -9.3396788084817839, -5.0111216924022326, 3.8386412346485246, 5.4135034207939734, -1.8528285666552722, 5.1834990236742877, 1.6555263358427816, 11.612276559812305, -7.8906144576045634, 3.3788212340025794, 8.6611514382956134, 11.303751771743098, -8.178134001542352, -7.7861242507141739, -8.550245641482018, 14.560198457183212, 11.522183354515889, -6.2092289934431744, 2.9318751685258069, 3.3176995571078498, -5.8676814992985786, -0.20142795940600339, -2.7548374956229265, -6.8234029820802586, -12.163878006280664, 3.7806635675811586, -11.384100861414165, 8.7968186354408893, 12.602745071995059, 3.9245275583051131, -12.485152199462473, 16.203610318578459, -12.778789390965139, 5.947784733269585, 0.043047146622793971, -0.21345058826177227, 12.056937533036457, -9.1293854677176682, -4.42743558791397, -10.992655730531101, 8.3327388706627676, -12.992478987886726, -3.9543911492643642, -13.441154463082384, -12.435765074796056, -4.8852471655352634, -7.5923950323705602, -6.1492824170455656, 6.6739203355868639, -6.8564402397588049, 3.8481202559130292, 14.631984071956355, -8.7012825984650899, 6.9912612052883354, 3.5901162162795877, 9.7901877081271138, 5.4898629984229474, -5.8299777300514934, 5.6636306567161858, -3.4376920400139075, -9.5457719463457877, 7.1553767994109512, -8.7053412847926559, 9.5704477634723055, -10.280820394571341, 3.9521533125794948, -7.3266725654275424, 5.6786044706323144, 2.3606102777279809, 20.130551498394631, 13.874264557291831, 12.159830089485711, -4.8906152168284516, 15.984498194925441, -5.7186401946137178, 4.8137170469596668, -8.3963626855772819, -9.2358887735950113, 9.0734539426016685, -10.212878735699499, -5.7678340864866833, 4.4358144111155111, -8.7975968699104854, -3.4765821930666503, 5.9968571181084371, -9.8666578506479876, 7.948328947816961, -1.6329791723432137, -3.2589625483304965, 10.914896850859009, -9.6348918992838577, 3.9496686667281429, -0.43212959079978708, -11.886061929354181, -1.4794363504765682, -9.6183831499867853, 11.240987817993659, 9.9687442031795293, -10.925260236125421, 7.2168938893916739, -9.8552762177525572, -6.0665742410640249, -8.6615748667952843, -5.7433849549057063, -1.3280443605766437, 14.868122965257667, 7.7231238473635413, -7.3390933241389398, -10.920255311404222, -10.528602925968642, 15.358601551553715, -14.526084973993848, 7.6509043363347669, 3.6093710598082187, -6.6960812909833365, 7.0890696432612419, -11.556058828365527, 4.4377032979213098, -10.573403540759278, 2.6061483340622646, -6.1581097570201413, 6.7641858643912744, -7.4602529589100861, -6.0927154714803962, 7.0513090242129932, 6.0680403349752927, -8.0201805767442647, 7.6143254699279739, 10.081541689232729, -4.2697255549172795, 6.8450884177449804, -9.3030886529899419, 10.329882427968109, 6.4188087024847098, -7.9299089583332165, 5.3570536587621191, 8.782347951713998, -11.005407014352345, -4.129815283417452, -15.281119948137995, -9.2865870557328929, -1.3434724280566799, 11.966880900034692, 12.566450377983358, -18.792935520852794, -0.68478067997372916, -10.126566557740903, 8.1631975996741382
};
const char H_128_384_23_detected_data[] = {
0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0
};