Browse Source

Tools: ecl analysis handle estimator_innovations/estimator_innovation_variances size inconsistencies

sbg
Daniel Agar 4 years ago committed by GitHub
parent
commit
c57a48682e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 21
      Tools/ecl_ekf/plotting/pdf_report.py

21
Tools/ecl_ekf/plotting/pdf_report.py

@ -47,7 +47,26 @@ def create_pdf_report(ulog: ULog, output_plot_filename: str) -> None: @@ -47,7 +47,26 @@ def create_pdf_report(ulog: ULog, output_plot_filename: str) -> None:
for key in estimator_innovation_variances:
# append 'var' to the field name such that we can distingush between innov and innov_var
innovation_data.update({str('var_'+key): estimator_innovation_variances[key]})
print('found innovation data')
innovations_min_length = float('inf')
for key in estimator_innovations:
if len(estimator_innovations[key]) < innovations_min_length:
innovations_min_length = len(estimator_innovations[key])
variances_min_length = float('inf')
for key in estimator_innovation_variances:
if len(estimator_innovation_variances[key]) < variances_min_length:
variances_min_length = len(estimator_innovation_variances[key])
# ensure consistent sizing for plots
if (innovations_min_length != variances_min_length):
print("estimator_innovations and estimator_innovation_variances are different sizes, adjusting")
innovation_data_min_length = min(innovations_min_length, variances_min_length)
for key in innovation_data:
innovation_data[key] = innovation_data[key][0:innovation_data_min_length]
print('found innovation data (merged estimator_innovations + estimator_innovation_variances)')
except:
raise PreconditionError('could not find innovation data')

Loading…
Cancel
Save