try: N = txt['K']['peaks'][df['element1'][i]] sigma_N = txt['K']['errors'][df['element1'][i]] except: pass #print(txt['K']['errors'][11]) # ler corrente e tempo dos arquivos csv import shimadzu as sd doc_csv = 'data/calibration/2010-10/csv/' for j in range(len(serial)): doc_csv += serial[j] for j in range(len(pto_csv)): doc_csv += pto_csv[j] file_content = pathlib.Path(doc_csv).read_text() It = sd.parseCsv(file_content) I = It['current'] tempo = It['livetime'] # subtrair branco ?? # caculcar fator de resposta ponto a ponto from responseFactor import responseFactor R, sigma_R = responseFactor(N, d, I, tempo, sigma_N) linha_fatores = [df['element1'][i], R, sigma_R] fatores.append(linha_fatores) #calcular fator de resposta para element2 d = df['density2'][i] try:
} # current * live time for each file it1 = 1000 * 959 it2 = 1000 * 960 it3 = 1000 * 959 # all lists above indexed by file names peaks = {} errors = {} irradiation_parameters = {} # parser files keys = csvs.keys() # or txts.keys() for key in keys: irradiation_parameters[key] = parseCsv(csvs[key]) txt_content = parseTxt(txts[key]) peaks[key] = txt_content['K']['peaks'] errors[key] = txt_content['K']['errors'] class blankCorrectionTest(unittest.TestCase): def test_13(self): # teste peak testcase = blankCorrection(irradiation_parameters, peaks, errors)['peaks_correction'][13] calculed = (0 / it1 + 226 / it2 + 212 / it3) / 3 self.assertAlmostEqual(testcase, calculed) # test error testcase = blankCorrection(irradiation_parameters, peaks,
import sys import math sys.path.append('./lib/') from responseFactor import responseFactor from shimadzu import parseCsv from winqxas import parseTxt import numpy as np # test data micromatter = pathlib.Path( 'data/calibration/micromatter-table-iag.csv').read_text() csv_34671 = pathlib.Path('data/calibration/2010-10/csv/34671.csv').read_text() txt_34671 = pathlib.Path('data/calibration/2010-10/txt/34671.txt').read_text() irradiation_parameters = parseCsv(csv_34671) txt_content = parseTxt(txt_34671) peaks = txt_content['K']['peaks'] errors = txt_content['K']['errors'] i = irradiation_parameters['current'] t = irradiation_parameters['livetime'] N = peaks[22] sigma_N = errors[22] class calculateResponseFactorTest(unittest.TestCase): def test_Ti(self): R, sigma_R = responseFactor(N, 49.4, i, t, sigma_N) R_calculated = 454712 / (268 * 179 * 49.4) sigma_calculated = R_calculated * np.sqrt((676 / 454712)**2 +
def test_livetime(self): self.assertEqual(parseCsv(file_content)['livetime'],959)
def test_current(self): self.assertEqual(parseCsv(file_content)['current'],1000)
def test_sample(self): self.assertEqual(parseCsv(file_content)['sample'],"AFR390")
import pandas as pd densidades = pd.read_csv('data/calibration/micromatter-table-iag.csv') df = pd.DataFrame(densidades) d = df['density1'][0] # ler contagens do arquivos txt import sys import pathlib sys.path.append('lib') from winqxas import parseTxt file_content = pathlib.Path('data/calibration/2010-10/txt/34662.txt').read_text() txt = parseTxt(file_content) N = txt['K']['peaks'][11] #print(txt['K']['errors'][11]) # ler corrente e tempo dos arquivos csv import shimadzu file_content = pathlib.Path('data/calibration/2010-10/csv/34662.csv').read_text() It = shimadzu.parseCsv(file_content) I = It['current'] tempo = It['livetime'] # subtrair branco ?? # caculcar fator de resposta ponto a ponto from responseFactor import responseFactor R = responseFactor(N,d,I,tempo) print(R) # Ajustar polinômio