def setUp(self): rid = '60754-10' config = ConfigParser() p = '/Users/ross/Sandbox/pychron_validation_data.cfg' config.read(p) signals = [list(map(float, x.split(','))) for x in [config.get('Signals-{}'.format(rid), k) for k in ['ar40', 'ar39', 'ar38', 'ar37', 'ar36']]] blanks = [list(map(float, x.split(','))) for x in [config.get('Blanks-{}'.format(rid), k) for k in ['ar40', 'ar39', 'ar38', 'ar37', 'ar36']]] irradinfo = [list(map(float, x.split(','))) for x in [config.get('irrad-{}'.format(rid), k) for k in ['k4039', 'k3839', 'ca3937', 'ca3837', 'ca3637', 'cl3638']]] j = config.get('irrad-{}'.format(rid), 'j') j = [float(x) for x in j.split(',')] baselines = [(0, 0), (0, 0), (0, 0), (0, 0), (0, 0)] backgrounds = [(0, 0), (0, 0), (0, 0), (0, 0), (0, 0)] ar37df = config.getfloat('irrad-{}'.format(rid), 'ar37df') t = math.log(ar37df) / (constants.lambda_37.nominal_value * 365.25) irradinfo.append(t) # load results r = 'results-{}'.format(rid) self.age = config.getfloat(r, 'age') self.rad4039 = config.getfloat(r, 'rad4039') self.ca37k39 = config.getfloat(r, 'ca37k39') self.age_dict = calculate_arar_age(signals, baselines, blanks, backgrounds, j, irradinfo, )
def _calc_from_file(self, path): self.results = [] workbook = xlrd.open_workbook(path) ir_s = workbook.sheet_by_name('irradiation') irrad_info = self._load_irrad_info_from_file(ir_s) i_s = workbook.sheet_by_name('intensities') header = self._make_row(i_s, 0) try: bl_s = workbook.sheet_by_name('blanks') bl_header = self._make_row(bl_s, 0) except xlrd.XLRDError: bl_s = None bl_header = None try: bg_s = workbook.sheet_by_name('backgrounds') bg_header = self._make_row(bg_s, 0) except xlrd.XLRDError: bg_header = None bg_s = None try: bs_s = workbook.sheet_by_name('baselines') bs_header = self._make_row(bs_s, 0) except xlrd.XLRDError: bs_header = None bs_s = None idx_j = header.index('j') idx_jerr = header.index('j_err') idx_ic = header.index('ic') idx_ic_err = header.index('ic_err') c_s = workbook.sheet_by_name('constants') constants_obj = Constants(c_s) for ri in range(1, i_s.nrows): signals = self._load_signals(header, i_s, ri) blanks = self._load_signals(bl_header, bl_s, ri) baselines = self._load_signals(bs_header, bs_s, ri) backgrounds = self._load_signals(bg_header, bg_s, ri) row = self._make_row(i_s, ri) idn = row[0] j = map(float, (row[idx_j], row[idx_jerr])) ic = map(float, (row[idx_ic], row[idx_ic_err])) arar_result = calculate_arar_age(signals, baselines, blanks, backgrounds, j, irrad_info, a37decayfactor=1, a39decayfactor=1, ic=ic, arar_constants=constants_obj) self.results.append(Result(identifier=idn, age=arar_result['age'] / 1e6))
def setUp(self): rid = '60754-10' config = ConfigParser() p = '/Users/ross/Sandbox/pychron_validation_data.cfg' config.read(p) signals = [ list(map(float, x.split(','))) for x in [ config.get('Signals-{}'.format(rid), k) for k in ['ar40', 'ar39', 'ar38', 'ar37', 'ar36'] ] ] blanks = [ list(map(float, x.split(','))) for x in [ config.get('Blanks-{}'.format(rid), k) for k in ['ar40', 'ar39', 'ar38', 'ar37', 'ar36'] ] ] irradinfo = [ list(map(float, x.split(','))) for x in [ config.get('irrad-{}'.format(rid), k) for k in ['k4039', 'k3839', 'ca3937', 'ca3837', 'ca3637', 'cl3638'] ] ] j = config.get('irrad-{}'.format(rid), 'j') j = [float(x) for x in j.split(',')] baselines = [(0, 0), (0, 0), (0, 0), (0, 0), (0, 0)] backgrounds = [(0, 0), (0, 0), (0, 0), (0, 0), (0, 0)] ar37df = config.getfloat('irrad-{}'.format(rid), 'ar37df') t = math.log(ar37df) / (constants.lambda_37.nominal_value * 365.25) irradinfo.append(t) # load results r = 'results-{}'.format(rid) self.age = config.getfloat(r, 'age') self.rad4039 = config.getfloat(r, 'rad4039') self.ca37k39 = config.getfloat(r, 'ca37k39') self.age_dict = calculate_arar_age( signals, baselines, blanks, backgrounds, j, irradinfo, )
def _calc_from_file(self, path): self.results = [] workbook = xlrd.open_workbook(path) ir_s = workbook.sheet_by_name('irradiation') irrad_info = self._load_irrad_info_from_file(ir_s) i_s = workbook.sheet_by_name('intensities') header = self._make_row(i_s, 0) try: bl_s = workbook.sheet_by_name('blanks') bl_header = self._make_row(bl_s, 0) except xlrd.XLRDError: bl_s = None bl_header = None try: bg_s = workbook.sheet_by_name('backgrounds') bg_header = self._make_row(bg_s, 0) except xlrd.XLRDError: bg_header = None bg_s = None try: bs_s = workbook.sheet_by_name('baselines') bs_header = self._make_row(bs_s, 0) except xlrd.XLRDError: bs_header = None bs_s = None idx_j = header.index('j') idx_jerr = header.index('j_err') idx_ic = header.index('ic') idx_ic_err = header.index('ic_err') c_s = workbook.sheet_by_name('constants') constants_obj = Constants(c_s) for ri in range(1, i_s.nrows): signals = self._load_signals(header, i_s, ri) blanks = self._load_signals(bl_header, bl_s, ri) baselines = self._load_signals(bs_header, bs_s, ri) backgrounds = self._load_signals(bg_header, bg_s, ri) row = self._make_row(i_s, ri) idn = row[0] j = map(float, (row[idx_j], row[idx_jerr])) ic = map(float, (row[idx_ic], row[idx_ic_err])) arar_result = calculate_arar_age(signals, baselines, blanks, backgrounds, j, irrad_info, a37decayfactor=1, a39decayfactor=1, ic=ic, arar_constants=constants_obj) self.results.append( Result(identifier=idn, age=arar_result['age'] / 1e6))