FLQT.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:HamiltonianPy 作者: waltergu 项目源码 文件源码
def FLQTQEB(engine,app):
    '''
    This method calculates the Floquet quasi-energy bands.
    '''
    if app.path is None:
        result=zeros((2,engine.nmatrix+1))
        result[:,0]=array(xrange(2))
        result[0,1:]=angle(eig(engine.evolution(ts=app.ts.mesh('t')))[0])/app.ts.volume('t')
        result[1,1:]=result[0,1:]
    else:
        rank,mesh=app.path.rank(0),app.path.mesh(0)
        result=zeros((rank,engine.nmatrix+1))
        result[:,0]=mesh if mesh.ndim==1 else array(xrange(rank))
        for i,paras in app.path('+'):
            result[i,1:]=angle(eig(engine.evolution(ts=app.ts.mesh('t'),**paras))[0])/app.ts.volume('t')
    name='%s_%s'%(engine,app.name)
    if app.savedata: savetxt('%s/%s.dat'%(engine.dout,name),result)
    if app.plot: app.figure('L',result,'%s/%s'%(engine.dout,name))
    if app.returndata: return result
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号