def test_direct_load_aixACCT_hysteresis_data(): RTfreqDir = join(sampledir, 'RTWhiteB_freqs') RTfreqFiles = hd.dir_read(RTfreqDir) RTfreqData = hd.list_read(RTfreqFiles, thickness=255E-7, area=1e-4) directreaddict = aix.read_tfdata(join(sampledir, 'RTWhiteB_freqs.dat')) directFreqData = aix.load_tfdata(directreaddict) assert all(elem in directFreqData for elem in RTfreqData)
def test_direct_load_aixACCT_leakage_data(): RTlkgDir = join(sampledir, 'RTWhiteB_lkg') RTlkgFiles = hd.dir_read(RTlkgDir) lkglist = [] for i in RTlkgFiles: l = hd.LeakageData(thickness=255E-7, area=1e-4) l.lcm_read(i) lkglist.append(l) directreaddict = aix.read_tfdata(join(sampledir, 'RTWHITEB_lkg.dat')) directlkgData = aix.load_tfdata(directreaddict) print(all(elem in directlkgData for elem in lkglist)) assert all(elem in directlkgData for elem in lkglist)
# %% [markdown] pycharm={"name": "#%% md\n"} # To see a quick overview of the measurement without inspecting each property, it is also possible to print the object # directly: # %% pycharm={"name": "#%%\n"} print(data) # %% [markdown] # To import a number of individual tsv measurement tables at once, ferro also provides dir_read and list_read functions # for hysteresisData. `dir_read()` will return a list of files in a directory, which can be passed to `list_read()`, which # will return a list of hysteresisData objects. If a list of both DHM and IV data is passed, `list_read()` will attempt # leakage current compensation of the hysteresis data, matching a leakage measurement by temperature. # %% pycharm={"name": "#%%\n"} templkgfiles = hd.dir_read(templkgdir) pp.pprint(templkgfiles) # %% pycharm={"name": "#%%\n"} tempfiles = hd.dir_read(tempdir) tempData = hd.list_read(tempfiles, templkgfiles) pp.pprint(tempData) # %% [markdown] pycharm={"name": "#%% md\n"} # ## aixACCT import # # Native import for DynamicHysteresisResult amd LeakageResult data from aixACCT .dat ASCII export files is also supported. # This corresponds to DHM and Leakage measurements (if you are not sure of measurement type, open the .dat file in a # text editor and look at the first line). # # The direct read in happens in two parts. The first half, `read_tfdata()`, parses the data text file and loads
else: root_folder = dirname(realpath(__file__)) DATA_ROOT = join(root_folder, "tests", "testData") freqdir = join(DATA_ROOT, r"hfo2_MFM", "H9_x9y4_1e4_freq") tempdir = join(DATA_ROOT, r"hfo2_MFM", "H9_x9y4_1e4_S3_temps") templkgdir = join(DATA_ROOT, r"hfo2_MFM", "H9_x9y4_1e4_S3_tempslkg") forcFile = join(DATA_ROOT, r"hfo2_MFM", "H9_x9y4_1e4_forc", "H9 die (9,4) 0Hz 4V 1Average Table1.tsv") # %% [markdown] pycharm={"name": "#%% md\n"} # # %% pycharm={"name": "#%%\n"} templkgfiles = hd.dir_read(templkgdir) print(templkgfiles) # %% pycharm={"name": "#%%\n"} tempfiles = hd.dir_read(tempdir) tempData = hd.list_read(tempfiles, templkgfiles) print(tempData) # %% pycharm={"name": "#%%\n"} freqfiles = hd.dir_read(freqdir) freqData = hd.list_read(freqfiles) print(freqData) # %% pycharm={"name": "#%%\n"} hfo2 = lf.LandauFull(thickness=13E-7, area=6579E-8) cCompData = freqData[0]