示例#1
0
def read_h5_file(folder, bending=False):
    """ read data from hdf5 file"""

    ### file path

    fpath = folder + 'out.h5'
    assert os.path.exists(fpath), "The out.h5 file does NOT exist for " + fpath
    fl = h5py.File(fpath, 'r')

    ### positions of beads

    xu = np.array(fl['/beads/xu'], dtype=np.float32)
    cid = np.array(fl['/beads/cid'], dtype=np.float32)

    ### cell information

    comu = np.array(fl['/cells/comu'], dtype=np.float32)
    pol = np.array(fl['/cells/pol'], dtype=np.float32)
    nbpc = np.array(fl['/cells/nbpc'], dtype=np.float32)

    ### simulation information

    lx = fl['/info/box/x'][...]
    ly = fl['/info/box/y'][...]
    dt = fl['/info/dt'][...]
    nsteps = fl['/info/nsteps'][...]
    ncells = fl['/info/ncells'][...]
    nbeads = fl['/info/nbeads'][...]
    nsamp = fl['/info/nsamp'][...]

    ### simulation parameters

    eps = fl['/param/eps'][...]
    rho = fl['/param/rho'][...]
    fp = fl['/param/fp'][...]
    areak = fl['/param/areak'][...]
    bl = fl['/param/bl'][...]
    sigma = fl['/param/sigma'][...]
    kappa = 100.0
    if bending:
        kappa = fl['/param/kappa'][...]

    fl.close()

    ### generate classes to submerge data

    sim = misc_tools.Simulation(lx, ly, dt, nsteps, ncells, nbeads, nsamp, nbpc, \
                     eps, rho, fp, areak, bl, sigma, kappa)
    cells = misc_tools.Cells(comu, pol, nbpc, sim)
    beads = misc_tools.Beads(xu, cid)

    return sim, cells, beads
示例#2
0
def read_h5_file_beads(folder, filen):
    """ read data from hdf5 file for filament information"""
    
    ### file path
    
    fpath = folder + filen + '.h5'
    assert os.path.exists(fpath), "The out.h5 file does NOT exist for " + fpath
    fl = h5py.File(fpath, 'r')
    
    ### bead information
    
    xu = np.array(fl['/beads/xu'], dtype=np.float32)
    #pol = np.array(fl['/beads/pol'], dtype=np.float32)
    cid = np.array(fl['/beads/cid'], dtype=np.int32)
    
    ### simulation information
    
    lx = fl['/info/box/x'][...]
    ly = fl['/info/box/y'][...]
    dt = fl['/info/dt'][...]
    nsteps = fl['/info/nsteps'][...]
    nfils = fl['/info/nfils'][...]
    nbeads = fl['/info/nbeads'][...]
    nsamp = fl['/info/nsamp'][...]
    nbpf = fl['/info/nbpf'][...]
    
    ### simulation parameters
    
    density = fl['/param/density'][...]
    kappa = fl['/param/kappa'][...]
    km = fl['/param/km'][...]
    pa = fl['/param/pa'][...]
    pp = fl['/param/pp'][...]
    bl = fl['/param/bl'][...]
    sigma = fl['/param/sigma'][...]
    
    fl.close()
    
    ### generate classes to submerge data
    
    sim = misc_tools.Simulation(lx, ly, dt, nsteps, nfils, nbeads, nsamp, nbpf, \
                     density, kappa, km, pa, pp, bl, sigma)
    beads = misc_tools.Beads(xu, cid)
    
    return sim, beads
示例#3
0
def read_sim_info_arvind_format(folder, filen):
    """ read simulation info from hdf5 file in arvind style"""
    
    ### file path
    
    fpath = folder + filen + '.h5'
    assert os.path.exists(fpath), "The out.h5 file does NOT exist for " + fpath
    fl = h5py.File(fpath, 'r')    
    
    ### simulation information
    
    lx = fl['/info/box/x'][...]
    ly = fl['/info/box/y'][...]
    dt = fl['/info/dt'][...]
    nsteps = fl['/info/nsteps'][...]
    nfils = fl['/info/nfils'][...]
    nbeads = fl['/info/nbeads'][...]
    nsamp = fl['/info/nsamp'][...]
    nbpf = fl['/info/nbpf'][...]
    
    ### simulation parameters
    
    density = fl['/param/density'][...]
    kappa = fl['/param/kappa'][...]
    km = fl['/param/km'][...]
    pa = fl['/param/pa'][...]
    pp = fl['/param/pp'][...]
    bl = fl['/param/bl'][...]
    sigma = fl['/param/sigma'][...]
    
    fl.close()
    
    ### generate classes to submerge data
    
    sim = misc_tools.Simulation(lx, ly, dt, nsteps, nfils, nbeads, nsamp, nbpf, \
                     density, kappa, km, pa, pp, bl, sigma)
    
    return sim