• APDL命令流:将ansys分析结果输出为tecplot格式


    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    /post1
    file,Jobname,rst                       !指明从哪一个结果文件中读取数据
    *get,NodeNum,NODE,0,COUNT               !得到模型的所有节点数
    *get,nd,NODE,0,NUM,MIN                       !得到模型的最小节点编号
    *dim,nodes,array,NodeNum                     !定义一个存储节点的数组
    *dim,xyz,array,NodeNum,3                     !定义一个存储节点坐标的数组
    *dim,NodeTemp,array,NodeNum                  !定义一个存储节点的数组
    set,4,1                                      !读入第四载荷步、第一个子步的结果
    *do,i,1,NodeNum,1
        nodes(i)=nd                              !将节点编号存储在nodes数组中
        xyz(i,1)=NX(nd)                          !在xyz(i,1)中存储节点的X坐标
        xyz(i,2)=NY(nd)                          !在xyz(i,1)中存储节点的Y坐标
        xyz(i,3)=NZ(nd)                          !在xyz(i,1)中存储节点的Z坐标
        *Get,NodeTemp(i),NODE,nodes(i),TEMP
        nd=NDNEXT(nd)                            !取得下一个节点编号
    *enddo
    
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    *get,ElementNum,ELEM,0,COUNT                  !得到模型的所有单元数
    *get,el,ELEM,0,NUM,MIN                        !得到模型的最小单元编号
    *dim,elems,array,ElementNum                   !定义一个存储单元的数组   
    *dim,ndlst,array,ElementNum,8                 !定义一个存储节点坐标的数组
    *do,i,1,ElementNum,1
        elems(i)=el                               !将单元编号存储在elems数组中
        *do,j,1,8,1
            ndlst(i,j)=NELEM(el,j)                !将单元对应的节点编号存储在ndlst数组中
        *enddo
        el=ELNEXT(el)                             !取得下一个单元编号
    *enddo
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    *cfopen,mesh,dat                              !输出的文件名为:mesh.dat
    
    !写TecPlot文件的文件头
    *vwrite
    (’TITLE=Ansys Temperature Analysis’)
    
    !写变量名
    *vwrite
    (’VARIABLES=”X”,”Y”,”Z”,”Temp”‘)
    
    !写节点数和单元数
    *vwrite,NodeNum,ElementNum
    (’ZONE n=’f6.1,’   e=’f6.1,’    f=fepoint’,'    et=brick’)
    
    !写节点的坐标和温度值
    *vwrite,xyz(1,1),xyz(1,2),xyz(1,3),NodeTemp(1)
    (4f12.6)
    
    !写一个空行
    *vwrite
    (’ ‘)
    
    !写各单元对应的节点号
    *vwrite,ndlst(1,1),ndlst(1,2),ndlst(1,3),ndlst(1,4),ndlst(1,5),ndlst(1,6),ndlst(1,7),ndlst(1,8)
    (8f6.0)
    
    !关闭文件
    *CFCLOSE
    
    finish
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    
  • 相关阅读:
    linux安装ftp服务器
    批量删除某个用户所有的表
    解决ORA-14450:试图访问已经在使用的事务处理临时表
    jpa 表字段转bean对象
    oracle查询包含某个字段的表
    给所有的表建同义词
    easyui datagrid
    oracle 拼接一张表所有字段
    easyui js基础
    MySQL的Grant命令
  • 原文地址:https://www.cnblogs.com/make217/p/5652584.html
Copyright © 2020-2023  润新知