WSJT-X/lib/fsk4hf/ldpc_174_74_parity.f90

289 lines
6.8 KiB
Fortran

! parity check matrix for regular column weight 3 (174,74) LDPC code
data Mn/ &
28, 32, 98, &
1, 94, 95, &
70, 71, 94, &
3, 9, 39, &
4, 22, 84, &
5, 25, 85, &
6, 55, 100, &
7, 41, 67, &
8, 62, 77, &
10, 37, 40, &
11, 16, 36, &
12, 29, 47, &
14, 57, 91, &
15, 49, 59, &
17, 18, 52, &
19, 48, 58, &
20, 34, 72, &
21, 38, 87, &
23, 46, 79, &
24, 43, 83, &
26, 74, 78, &
27, 51, 98, &
30, 35, 42, &
31, 63, 88, &
25, 33, 82, &
44, 53, 96, &
50, 75, 90, &
46, 54, 71, &
56, 76, 81, &
60, 65, 69, &
61, 95, 97, &
64, 89, 99, &
66, 73, 76, &
68, 80, 92, &
74, 86, 87, &
52, 55, 93, &
1, 3, 21, &
2, 57, 64, &
4, 11, 82, &
5, 60, 81, &
6, 13, 66, &
7, 43, 59, &
8, 27, 85, &
9, 34, 94, &
10, 28, 88, &
12, 19, 53, &
14, 33, 65, &
15, 75, 84, &
16, 56, 68, &
17, 44, 90, &
18, 23, 73, &
20, 26, 83, &
22, 42, 91, &
24, 70, 79, &
29, 96, 97, &
30, 48, 77, &
31, 37, 67, &
32, 35, 78, &
36, 80, 89, &
38, 62, 93, &
39, 54, 72, &
40, 58, 61, &
41, 51, 86, &
9, 45, 63, &
46, 47, 92, &
49, 50, 80, &
69, 75, 98, &
14, 71, 99, &
21, 85, 100, &
1, 6, 50, &
2, 74, 98, &
3, 73, 92, &
4, 32, 79, &
5, 63, 96, &
1, 29, 79, &
2, 6, 84, &
3, 36, 78, &
4, 59, 69, &
5, 72, 80, &
2, 41, 44, &
7, 38, 90, &
8, 58, 99, &
9, 42, 49, &
10, 46, 74, &
11, 14, 73, &
12, 85, 88, &
13, 25, 93, &
5, 11, 61, &
15, 16, 94, &
8, 15, 32, &
17, 64, 76, &
18, 60, 71, &
19, 34, 57, &
20, 77, 96, &
21, 31, 82, &
22, 23, 48, &
16, 17, 22, &
24, 35, 86, &
13, 51, 64, &
26, 33, 39, &
4, 27, 47, &
28, 54, 56, &
1, 62, 76, &
30, 53, 100, &
21, 46, 57, &
32, 55, 61, &
33, 92, 95, &
19, 67, 68, &
14, 35, 75, &
3, 84, 99, &
37, 75, 92, &
7, 30, 63, &
23, 39, 50, &
27, 40, 44, &
41, 66, 91, &
9, 10, 69, &
12, 43, 52, &
6, 20, 88, &
43, 45, 89, &
24, 31, 60, &
47, 50, 70, &
26, 38, 45, &
25, 42, 98, &
40, 79, 87, &
51, 68, 83, &
52, 97, 98, &
48, 71, 78, &
28, 29, 80, &
53, 59, 73, &
49, 54, 95, &
34, 36, 90, &
55, 82, 89, &
4, 77, 90, &
49, 58, 81, &
18, 56, 77, &
62, 63, 65, &
60, 91, 100, &
2, 11, 62, &
15, 24, 93, &
37, 66, 83, &
65, 85, 86, &
5, 10, 48, &
1, 69, 89, &
67, 81, 87, &
13, 56, 75, &
70, 72, 97, &
8, 50, 57, &
6, 19, 33, &
7, 25, 99, &
74, 94, 96, &
14, 52, 87, &
16, 30, 40, &
20, 42, 79, &
17, 21, 72, &
9, 12, 41, &
18, 61, 67, &
3, 83, 97, &
26, 80, 91, &
23, 55, 65, &
27, 31, 95, &
28, 84, 86, &
29, 34, 93, &
46, 51, 63, &
35, 39, 76, &
13, 44, 78, &
32, 37, 38, &
22, 43, 92, &
45, 53, 54, &
58, 73, 74, &
47, 64, 100, &
59, 68, 85, &
66, 82, 96, &
36, 81, 88, &
2, 45, 70/
data Nm/ &
2, 37, 70, 75, 103, 143, &
38, 71, 76, 80, 138, 174, &
4, 37, 72, 77, 110, 157, &
5, 39, 73, 78, 101, 133, &
6, 40, 74, 79, 88, 142, &
7, 41, 70, 76, 118, 148, &
8, 42, 81, 112, 149, 0, &
9, 43, 82, 90, 147, 0, &
4, 44, 64, 83, 116, 155, &
10, 45, 84, 116, 142, 0, &
11, 39, 85, 88, 138, 0, &
12, 46, 86, 117, 155, 0, &
41, 87, 99, 145, 165, 0, &
13, 47, 68, 85, 109, 151, &
14, 48, 89, 90, 139, 0, &
11, 49, 89, 97, 152, 0, &
15, 50, 91, 97, 154, 0, &
15, 51, 92, 135, 156, 0, &
16, 46, 93, 108, 148, 0, &
17, 52, 94, 118, 153, 0, &
18, 37, 69, 95, 105, 154, &
5, 53, 96, 97, 167, 0, &
19, 51, 96, 113, 159, 0, &
20, 54, 98, 120, 139, 0, &
6, 25, 87, 123, 149, 0, &
21, 52, 100, 122, 158, 0, &
22, 43, 101, 114, 160, 0, &
1, 45, 102, 128, 161, 0, &
12, 55, 75, 128, 162, 0, &
23, 56, 104, 112, 152, 0, &
24, 57, 95, 120, 160, 0, &
1, 58, 73, 90, 106, 166, &
25, 47, 100, 107, 148, 0, &
17, 44, 93, 131, 162, 0, &
23, 58, 98, 109, 164, 0, &
11, 59, 77, 131, 173, 0, &
10, 57, 111, 140, 166, 0, &
18, 60, 81, 122, 166, 0, &
4, 61, 100, 113, 164, 0, &
10, 62, 114, 124, 152, 0, &
8, 63, 80, 115, 155, 0, &
23, 53, 83, 123, 153, 0, &
20, 42, 117, 119, 167, 0, &
26, 50, 80, 114, 165, 0, &
64, 119, 122, 168, 174, 0, &
19, 28, 65, 84, 105, 163, &
12, 65, 101, 121, 170, 0, &
16, 56, 96, 127, 142, 0, &
14, 66, 83, 130, 134, 0, &
27, 66, 70, 113, 121, 147, &
22, 63, 99, 125, 163, 0, &
15, 36, 117, 126, 151, 0, &
26, 46, 104, 129, 168, 0, &
28, 61, 102, 130, 168, 0, &
7, 36, 106, 132, 159, 0, &
29, 49, 102, 135, 145, 0, &
13, 38, 93, 105, 147, 0, &
16, 62, 82, 134, 169, 0, &
14, 42, 78, 129, 171, 0, &
30, 40, 92, 120, 137, 0, &
31, 62, 88, 106, 156, 0, &
9, 60, 103, 136, 138, 0, &
24, 64, 74, 112, 136, 163, &
32, 38, 91, 99, 170, 0, &
30, 47, 136, 141, 159, 0, &
33, 41, 115, 140, 172, 0, &
8, 57, 108, 144, 156, 0, &
34, 49, 108, 125, 171, 0, &
30, 67, 78, 116, 143, 0, &
3, 54, 121, 146, 174, 0, &
3, 28, 68, 92, 127, 0, &
17, 61, 79, 146, 154, 0, &
33, 51, 72, 85, 129, 169, &
21, 35, 71, 84, 150, 169, &
27, 48, 67, 109, 111, 145, &
29, 33, 91, 103, 164, 0, &
9, 56, 94, 133, 135, 0, &
21, 58, 77, 127, 165, 0, &
19, 54, 73, 75, 124, 153, &
34, 59, 66, 79, 128, 158, &
29, 40, 134, 144, 173, 0, &
25, 39, 95, 132, 172, 0, &
20, 52, 125, 140, 157, 0, &
5, 48, 76, 110, 161, 0, &
6, 43, 69, 86, 141, 171, &
35, 63, 98, 141, 161, 0, &
18, 35, 124, 144, 151, 0, &
24, 45, 86, 118, 173, 0, &
32, 59, 119, 132, 143, 0, &
27, 50, 81, 131, 133, 0, &
13, 53, 115, 137, 158, 0, &
34, 65, 72, 107, 111, 167, &
36, 60, 87, 139, 162, 0, &
2, 3, 44, 89, 150, 0, &
2, 31, 107, 130, 160, 0, &
26, 55, 74, 94, 150, 172, &
31, 55, 126, 146, 157, 0, &
1, 22, 67, 71, 123, 126, &
32, 68, 82, 110, 149, 0, &
7, 69, 104, 137, 170, 0/
data nrw/ &
6,6,6,6,6,6,5,5,6,5,5,5,5,6,5,5,5,5,5,5, &
6,5,5,5,5,5,5,5,5,5,5,6,5,5,5,5,5,5,5,5, &
5,5,5,5,5,6,5,5,5,6,5,5,5,5,5,5,5,5,5,5, &
5,5,6,5,5,5,5,5,5,5,5,5,6,6,6,5,5,5,6,6, &
5,5,5,5,6,5,5,5,5,5,5,6,5,5,5,6,5,6,5,5/
ncw=3