def evaluate_single(L, filling, bond_dim, correlation_type):
    ## Get filenames
    fname = utils.find_resfile(L, filling, bond_dim)
    if fname is None:
        print 'No data available for L={}, n={}, M={}, {}'.format(L, filling, bond_dim, correlation_type)
        return None, None
    
    ## Get correlation matrix
    corr = compute(fname)
    if corr is None:
        print 'No data available for L={}, n={}, M={}, {}'.format(L, filling, bond_dim, correlation_type)
        return None, None
    
    if isinstance(correlation_type, utils.FixedStart):
        start_site = correlation_type.start
        y = corr.y[start_site, start_site+1:]
        x = np.arange(1, len(y)+1, dtype=float)
        d = np.column_stack([x, y])
        props = deepcopy(corr.props)
    elif isinstance(correlation_type, utils.Averaged):
        shifts = range(-5, 6)
        x,y = average_around_middle(corr.y, corr.props['L'], shifts)
        d = np.column_stack([x, y])
        props = deepcopy(corr.props)
    
    props['correlation_type'] = correlation_type
    return d, props
예제 #2
0
def evaluate_single(L, filling, bond_dim):
    ## Get filenames
    fname = utils.find_resfile(L, filling, bond_dim)
    if fname is None:
        print 'No data available for L={}, n={}, M={}'.format(L, filling, bond_dim)
        return None, None
    
    dens = compute(fname)
    
    d = np.column_stack([dens.x,dens.y])
    props = dens.props
    return d, props