Skip to content

Commit c9aada6

Browse files
author
Pasi Miettinen
committed
Develop L1CA and L2C tracking test further
1 parent 315615b commit c9aada6

File tree

5 files changed

+224
-52
lines changed

5 files changed

+224
-52
lines changed

peregrine/analysis/tracking_loop.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
# WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
1212

1313
import argparse
14-
import sys
14+
1515
from peregrine.samples import load_samples
1616
from peregrine.acquisition import AcquisitionResult
1717
from peregrine import defaults
@@ -75,8 +75,6 @@ def main():
7575
freq_profile = defaults.freq_profile_normal_rate
7676
elif args.profile == 'high_rate':
7777
freq_profile = defaults.freq_profile_high_rate
78-
else:
79-
raise NotImplementedError()
8078

8179
isL1CA = (args.signal == L1CA)
8280
isL2C = (args.signal == L2C)

peregrine/run.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ def __call__(self, parser, namespace, file_hnd, option_string=None):
5454
file_hnd.close()
5555

5656

57+
5758
def populate_peregrine_cmd_line_arguments(parser):
5859
if sys.stdout.isatty():
5960
progress_bar_default = 'stdout'

peregrine/tracking.py

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -250,13 +250,12 @@ def start(self):
250250

251251
logger.info("[PRN: %d (%s)] Tracking is started. "
252252
"IF: %.1f, Doppler: %.1f, code phase: %.1f, "
253-
"sample channel: %d sample index: %d" %
253+
"sample index: %d" %
254254
(self.prn + 1,
255255
self.signal,
256256
self.IF,
257257
self.acq.doppler,
258258
self.acq.code_phase,
259-
self.acq.sample_channel,
260259
self.acq.sample_index))
261260

262261
def get_index(self):
@@ -358,6 +357,7 @@ def run(self, samples):
358357
359358
"""
360359

360+
self.start()
361361
self.samples = samples
362362

363363
if self.sample_index < samples['sample_index']:
@@ -518,14 +518,13 @@ def run(self, samples):
518518
self.track_result.ms_tracked[self.i] = self.samples_tracked * 1e3 / \
519519
self.sampling_freq
520520

521+
self.track_result.status = 'T'
522+
521523
self.i += 1
522524
if self.i >= self.results_num:
523525
self.dump()
524526

525527
self.sample_index += samples_processed
526-
self.track_result.status = 'T'
527-
if self.i > 0:
528-
self.dump()
529528

530529
return self._get_result()
531530

@@ -1084,10 +1083,6 @@ def __init__(self, n_points, prn, signal):
10841083
self.signal = signal
10851084
self.ms_tracked = np.zeros(n_points)
10861085

1087-
def __str__(self):
1088-
return "PRN %2d (%s) %s" % \
1089-
(self.prn + 1, self.signal, self.status)
1090-
10911086
def dump(self, output_file, size):
10921087
"""
10931088
Store tracking result to file system.

tests/test_common.py

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,34 @@
1717
from mock import patch
1818

1919

20+
def fileformat_to_bands(file_format):
21+
if file_format == '1bit':
22+
bands = ['l1ca']
23+
elif file_format == '1bit_x2':
24+
bands = ['l1ca', 'l2c']
25+
elif file_format == '2bits':
26+
bands = ['l1ca']
27+
elif file_format == '2bits_x2':
28+
bands = ['l1ca', 'l2c']
29+
elif file_format == '2bits_x4':
30+
bands = ['l1ca', 'l2c']
31+
return bands
32+
33+
34+
def get_skip_params(skip_samples, skip_ms):
35+
if skip_samples is not None:
36+
skip_param = '--skip-samples'
37+
skip_val = skip_samples
38+
elif skip_ms is not None:
39+
skip_param = '--skip-ms'
40+
skip_val = skip_ms
41+
else:
42+
skip_param = '--skip-ms'
43+
skip_val = 0
44+
return (skip_param, skip_val)
45+
46+
47+
2048
def generate_2bits_x4_sample_file(filename):
2149
sample_block_size = 4 # [bits]
2250
s_file = np.memmap(filename, offset=0, dtype=np.uint8, mode='r')
@@ -120,21 +148,30 @@ def generate_sample_file(gps_sv_prn, init_doppler,
120148
def run_peregrine(file_name, file_format, freq_profile,
121149
skip_param, skip_val,
122150
skip_tracking=True,
123-
skip_navigation=True):
151+
skip_navigation=True,
152+
pipelining=None,
153+
short_long_cycles=None):
124154

125155
parameters = [
126156
'peregrine',
127157
'--file', file_name,
128158
'--file-format', file_format,
129159
'--profile', freq_profile,
130-
skip_param, str(skip_val)
160+
skip_param, str(skip_val),
161+
'--progress-bar', 'stdout'
131162
]
132163
if skip_tracking:
133164
parameters += ['-t']
134165

135166
if skip_navigation:
136167
parameters += ['-n']
137168

169+
if pipelining:
170+
parameters += ['--pipelining', str(pipelining)]
171+
172+
if short_long_cycles:
173+
parameters += ['--short-long-cycles', str(short_long_cycles)]
174+
138175
# Replace argv with args to skip tracking and navigation.
139176
with patch.object(sys, 'argv', parameters):
140177
print "sys.argv = ", sys.argv

0 commit comments

Comments
 (0)