Example #1
0
def do_param_search():
    z_list = arange(500, 1550, 50)
    diff_list = arange(1, 5.5, 0.5)
    cs = CalcSimWrapper()
    ds = InputDatastore('../InputData', 'NiCu', 973)
    ps = ParamSearchEngine(cs, ds)

    pbar = ProgressBar(widgets=['Parameter search: ', Percentage(), ' ', Bar()],
                       maxval=len(z_list) * len(diff_list))
    pbar.start()

    def progress_update(curi):
        pbar.update(curi)

    #logstream = StringIO()
    #logging.basicConfig(stream=logstream, level=logging.DEBUG)

    logging.basicConfig(level=logging.INFO)

    retim = ps.search(z_list, diff_list, 973, progress_update)

    #print(logstream.getvalue())

    extent = 1, 50, 0, 3000
    immap = imshow(retim, cmap=cm.jet, interpolation='nearest', extent=extent)
    colorbar(immap)
    ylabel('z* (arb. units)')
    xlabel('Cv/Cve (arb. units)')
    gca().set_aspect('auto')
    title('Search for minimum fit error')
    savetxt('paramsearch.csv', retim)
    savefig('paramsearch.png')
Example #2
0
    ]
    forwardfiles = [f for f in files if f.endswith("forward.csv")]
    reversefiles = [f for f in files if f.endswith("reverse.csv")]
    rx = r".*Searchmap_I([\-0-9\.]+)_.*.csv"
    for f in forwardfiles:
        print(str.format("Processing {}", f))
        I = float(re.match(rx, f).groups()[0])
        fresults[I] = np.genfromtxt(f, skip_header=0, delimiter=",")
    for f in reversefiles:
        print(str.format("Processing {}", f))
        I = -float(re.match(rx, f).groups()[0])
        rresults[I] = np.genfromtxt(f, skip_header=0, delimiter=",")
else:
    # do search for forward/back
    for direction, result_stash in [("forward", fresults), ("reverse", rresults)]:
        search_engine = ParamSearchEngine(accelcs, dstore)
        edict = dstore.edict_for_direction(direction)
        for I in edict.keys():
            print(str.format("{} bias, I = {}", direction, I))
            pbar = ProgressBar(
                widgets=["Parameter search: ", Percentage(), " ", Bar()], maxval=len(zrange) * len(cvfrange)
            )
            pbar.start()
            search_map = search_engine.search(zrange, cvfrange, I, args.temperature, pbar.update, direction)
            print("\n")
            result_stash[I] = search_map
            outpath = path.join(args.outputdir, str.format("Searchmap_I{}_{}.png", I, direction))
            dmplots.plot_search_map(
                search_map, (zrange[0], zrange[-1]), (cvfrange[0], cvfrange[-1]), I, direction, outpath
            )
            outpath = path.join(args.outputdir, str.format("Searchmap_I{}_{}.csv", I, direction))