From 992a85aafe902393adf7d3a81cb9549687d6cf65 Mon Sep 17 00:00:00 2001 From: xMestas Date: Tue, 20 Aug 2019 22:59:28 -0700 Subject: [PATCH] Catch ct.CanteraError when the cvodes integrator fails in sensitivity analysis --- pymars/sensitivity_analysis.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pymars/sensitivity_analysis.py b/pymars/sensitivity_analysis.py index dee156f..3509642 100644 --- a/pymars/sensitivity_analysis.py +++ b/pymars/sensitivity_analysis.py @@ -71,10 +71,14 @@ def evaluate_species_errors(starting_model, ignition_conditions, metrics, specie test_model_file = soln2cti.write( test_model, f'reduced_model_{species}.cti', path=temp_dir ) - reduced_model_metrics = sample_metrics( - test_model_file, ignition_conditions, phase_name=phase_name, - num_threads=num_threads - ) + try: + reduced_model_metrics = sample_metrics( + test_model_file, ignition_conditions, phase_name=phase_name, + num_threads=num_threads + ) + except ct.CanteraError: + species_errors[idx] = 100.0 + continue species_errors[idx] = calculate_error(metrics, reduced_model_metrics) return species_errors