• Visualise the Argyris basis functions


    """
    Author: kinnala
    Visualise the Argyris basis functions.
    """
    from skfem import *
    import matplotlib.pyplot as plt
    
    m = MeshTri.init_sqsymmetric()
    map = MappingAffine(m)
    e = ElementTriArgyris()
    
    ib = InteriorBasis(m, e, map, 5)
    
    f, axes = plt.subplots(3,3)
    
    ixs = [(0,0),(0,1),(0,2),(1,0),(1,2),(2,0)]
    i=0
    
    for itr in ib.dofnum.n_dof[:,4]:
        axi=axes[ixs[i]]
        axi.set_axis_off()
        X = np.zeros(ib.dofnum.N)
        X[itr] = 1.0
        M,x = ib.refinterp(X, 5)
        M.plot(x,smooth=True,ax=axi)
        i+=1
    
    axi = axes[(1,1)]
    axi.set_axis_off()
    m.draw(ax=axi)
    
    axi = axes[(2,1)]
    axi.set_axis_off()
    X = np.zeros(ib.dofnum.N)
    X[np.array([56,59,64,66])] = 1.0
    M,x = ib.refinterp(X, 5)
    M.plot(x,smooth=True,ax=axi)
    
    axi = axes[(2,2)]
    axi.set_axis_off()
    X = np.zeros(ib.dofnum.N)
    X[np.array([58,61,63,65])] = 1.0
    M,x = ib.refinterp(X, 5)
    M.plot(x,smooth=True,ax=axi)
    
    
    
    plt.axis('off')
    M.show()
    

      

  • 相关阅读:
    java获取文件夹下所有目录
    java下载zip文件
    oracle 递归查询数据
    easyUi刷新 tabs
    jsp引入本地图片
    zabbix web监测设置
    jenkins部署
    ss 异常活动端口查询-std
    logrotate 日志分割
    rsync删除大量小文件
  • 原文地址:https://www.cnblogs.com/wangshixi12/p/9433872.html
Copyright © 2020-2023  润新知