From bba438be15daf80c2474837ce41069bbbd6c82a7 Mon Sep 17 00:00:00 2001 From: Robert Izzard <ri0005@login1.compute.eureka2.surrey.ac.uk> Date: Mon, 24 Jan 2022 21:34:26 +0000 Subject: [PATCH] updates to improve type setting in parsing of cmdline args --- binarycpython/utils/grid.py | 18 ++++++++++++------ .../population_extensions/spacing_functions.py | 10 ++++++---- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/binarycpython/utils/grid.py b/binarycpython/utils/grid.py index c21dc4486..fe4258c62 100644 --- a/binarycpython/utils/grid.py +++ b/binarycpython/utils/grid.py @@ -374,7 +374,7 @@ class Population( # get the cmd-line args in the form x=y cmdline_args = sys.argv[1:] - + if cmdline_args: self.verbose_print( "Found cmdline args. Parsing them now", @@ -385,7 +385,7 @@ class Population( # Grab the input and split them up, while accepting only non-empty entries # cmdline_args = args self.grid_options["_commandline_input"] = cmdline_args - + # Make dict and fill it cmdline_dict = {} for cmdline_arg in cmdline_args: @@ -401,14 +401,19 @@ class Population( old_value = self.grid_options[parameter] old_value_found = True - elif parameter in self.defaults: - old_value = self.defaults[parameter] - old_value_found = True - elif parameter in self.custom_options: old_value = self.custom_options[parameter] old_value_found = True + elif parameter in self.bse_options: + old_value = self.bse_options[parameter] + old_value_found = True + + elif parameter in self.defaults: + # this will revert to a string type, always + old_value = self.defaults[parameter] + old_value_found = True + # (attempt to) convert type if old_value_found: if old_value is not None: @@ -1986,6 +1991,7 @@ class Population( self.grid_options["verbosity"], 0, ) + print("BSE",self.bse_options) raise ValueError if not any( diff --git a/binarycpython/utils/population_extensions/spacing_functions.py b/binarycpython/utils/population_extensions/spacing_functions.py index 242fe7c0e..36edd02e4 100644 --- a/binarycpython/utils/population_extensions/spacing_functions.py +++ b/binarycpython/utils/population_extensions/spacing_functions.py @@ -20,7 +20,7 @@ import numpy as np import cachetools import diskcache -# from binarycpython.utils.grid import Population + import py_rinterpolate @@ -345,13 +345,14 @@ class spacing_functions: return func(*args, **kwargs) return wrapped - - if cache: + + if cache is not None: __decorator = cache.memoize else: __decorator = __dummy_decorator - @__decorator + #@cache.memoize() + @__decorator() # note: () works with python3.9+, maybe not for 3.8 def _const_dt( cachedir=None, num_cores=None, @@ -392,6 +393,7 @@ class spacing_functions: if max_evolution_time: bse_options["max_evolution_time"] = max_evolution_time + from binarycpython.utils.grid import Population lifetime_population = Population() lifetime_population.bse_options = bse_options -- GitLab