| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  | #!/bin/bash | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # jt65 end-to-end simulator. Run enough cases to get a given | 
					
						
							|  |  |  | # number of successful decodes or a given number of errors | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  | # For better performance, copy this script and jt65, jt65sim | 
					
						
							|  |  |  | # executables to a ramdisk and run from there. | 
					
						
							| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  | mode=C | 
					
						
							|  |  |  | spread=4.0 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for i in `seq 0 21`; | 
					
						
							|  |  |  | do | 
					
						
							| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  | nruns=0 | 
					
						
							|  |  |  | ndecodes=0 | 
					
						
							|  |  |  | ngood=0 | 
					
						
							|  |  |  | nbad=0 | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  | snr=$((-25+$i)) | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  | #while [ $[ $nruns - $ngood ] -lt 200 ]  | 
					
						
							|  |  |  | #while [ $ngood -lt 200 ]  | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  | while [ $nruns -lt 1000 ]  | 
					
						
							| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  | do | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  |   rm 000000_0001.wav | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  |   ./jt65sim -m $mode -n 1 -d $spread -s \\$snr > /dev/null | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  |   rm decoded.txt | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  |   ./jt65 -m $mode -a 10 -f 1500 -n 1000 -s 000000_0001.wav > decoded.txt | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  |   if [ -e decoded.txt ]; then | 
					
						
							|  |  |  |     nd=$( wc -l < decoded.txt ) | 
					
						
							|  |  |  |     ng=$( grep "K1ABC" decoded.txt | wc -l ) | 
					
						
							|  |  |  |     nb=$[$nd-$ng] | 
					
						
							|  |  |  |     ndecodes=$[$ndecodes + $nd] | 
					
						
							|  |  |  |     ngood=$[$ngood + $ng] | 
					
						
							|  |  |  |     nbad=$[$nbad + $nb] | 
					
						
							| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  |   fi | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  |   nruns=$[$nruns + 1] | 
					
						
							|  |  |  |   nmissed=$[$nruns-$ngood] | 
					
						
							|  |  |  |   pe=$( echo "scale=5; $nmissed/$nruns" | bc -l ) | 
					
						
							|  |  |  |   ps=$( echo "scale=5; $ngood/$nruns" | bc -l ) | 
					
						
							|  |  |  |   echo -en snr: $snr nruns: $nruns ndecodes: $ndecodes ngood: $ngood nbad: $nbad nmissed: $nmissed wer: $pe success: $ps"\r" | 
					
						
							| 
									
										
										
										
											2015-12-06 04:43:39 +00:00
										 |  |  | done | 
					
						
							| 
									
										
										
										
											2016-01-03 23:14:17 +00:00
										 |  |  | echo snr: $snr nruns: $nruns ndecodes: $ndecodes ngood: $ngood nbad: $nbad nmissed: $nmissed wer: $pe success: $ps | 
					
						
							| 
									
										
										
										
											2016-03-12 15:02:35 +00:00
										 |  |  | done |