精华内容
下载资源
问答
  • tecplot中文教程

    2013-06-24 09:41:24
    Tecplot 是Amtec 公司推出的一个功能强大的科学汇图软件。它提供了丰富的绘图格式, 包括x-y曲线图,多种格式的的2-D 和3-D 面绘图,和3-D 体绘图格式。而且软件易学易用,界 面友好。
  • Tecplot 360是美国Tecplot公司推出的系列软件中的一员,Tecplot360EX是Tecplot 360的加强版本,是一套专业CFD和数值模拟与视觉化的软件工具。Tecplot360界面友好,易学易用,能按照您的设想迅速的根据数据绘图及生成...
  • 教程中介绍了一些Tecplot最基础的设置以及如何叠加两个XY图。
  • Tecplot 360 EX 2020 R1中文

    千次阅读 2020-07-31 10:30:45
    教程: 1、双击运行软件安装程序 ...4、选择软件安装路径,可更改,也可默认 5、软件进入安装状态,正在安装 ...9、接着将amped.txt文本内127.0.0.1 download.tecplot.com这句代码复制到C:\Windows\System32\...

     

    教程:

    1、双击运行软件安装程序

    2、点击我接受,同意软件相关许可协议

    3、选择点击第一项安装类型,并在方框勾选,创建桌面快捷方式

    4、选择软件安装路径,可更改,也可默认

    5、软件进入安装状态,正在安装

    6、安装完成,点击完成退出安装程序

    7、将AMPED文件复制到计算机磁盘根目录下(比如C:\、D:\、 E:\等)

    8、然后以管rlm.exe文件

    9、接着将amped.txt文本内127.0.0.1 download.tecplot.com这句代码复制到C:\Windows\System32\drivers\etc文件夹hosts文件中,hosts以记事本方式打开,并将代码保存下来

    10、启动软件,当被问及许时,选择“网络许”并给出“许服务器名称”:

    11、重新启动运行软件即可

    12、完成,就可以使用了在,资源地址:Tecplot 360 EX 2020 R1中文版

    展开全文
  • 本文主要对Tecplot的使用做一个简单的说明,先简单介绍一下各菜单及其选项的一些基本而主要的功能,然后说明一下边框工具栏的基本用法,最后会分别就几个一维和二维图形来说明一下Tecplot中一些常用的概念和一些基本...
  • Tecplot中输入一些自定义文字时的一些格式设置 粗体:<b>...</b> 斜体:<i>...</i> 下标:<sub>...</sub> 上标: <sup>...</sup> 希腊字母: <greek>...&...

    在Tecplot中输入一些自定义文字时的一些格式设置

    粗体:<b>...</b>
    斜体:<i>...</i>
    下标:<sub>...</sub>
    上标: <sup>...</sup>
    希腊字母: <greek>...</greek>
    数学符号: <math>...</math>
    自定义符号: <userdef>...</userdef>
    Times体:<times>...</times>
    Courier体:<courier>...</courier>
    注意:后面多了一个字符 “/”如果没有则肯定整个句子都会出现

    展开全文
  • matlab数据转换为tecplot格式[ASCII码格式下的plt文件]

    千次阅读 多人点赞 2020-02-08 10:31:56
    matlab数据转换为tecplot格式1 tecplot能读取的的常见ASCII格式2 一维数据3 二维数据4 三维数据 1 tecplot能读取的的常见ASCII格式 tecplot默认的数据读取与保存格式为二进制格式。与ASCII码格式相比,tecplot对二...


    2021.06更新。(1)修改了之前1.1节演示代码,之前ZONE前面忘记加注释(2)新增了结构网格的多块数据的写入说明。感谢评论区的老铁们。
    2021.08更新。(1)添加了离散点数据以及非结构数据的导入。

    1 tecplot能读取的的常见ASCII格式

    1.1 文件格式与文件头

    tecplot默认的数据读取与保存格式为二进制格式。与ASCII码格式相比,tecplot对二进制格式的读取数据速度更快。但是为了更方便的文件交互与人为校验,对于数据量不太大的ASCII格式也是必须的。

    本文输出的文件后缀为*.plt,由于是ASCII码格式,所以可以用记事本等软件打开。文件命名或者路径可以包含中文。对于单个文件导入时,可以采用load data,或者直接拖拽的方式读取文件。多个文件(比如非定常)不支持拖拽,需要load data。

    在文件中,以#号开头的行会作为注释而忽略。字符串需要采用双引号"X"进行括起来,如果字符串内包含双引号,则可以采用反斜杠的方式输入(")。

    文件对换行不是很敏感,多余的换行会被忽略掉(除了注释)。双引号内的字符串不能换行。文件也对大写小写不太敏感,ZONE和zone都可以被相同的识别,除双引号内的字符串。如果遇到并列,采用空格还是逗号也同样无所谓,亦或是混合搭配,这两种方式都可以被识别。

    文件中的数字可以采用整数 (101325),小数(101325.0),或科学计数法 (1.01325E+05)。数字和数字之间可以用空格、逗号、Tab、回车、换行进行分隔。如果有连续的重复数字,例如:37个120.5,后面跟着100个0.0,可以简写作:37120.5,1000.0。

    一个tecplot文件,可以分为文件头和数据两部分。文件头需要标明:TITLE名称、FILETYPE文件类型和VARIABLES变量名称。

    • TITLE,后面内容为字符串,格式为 TITLE = “Example File”
    • FILETYPE,可以选择为GRID(网格)、SOLUTION(结果)、FULL(全部)。这一项可以省略,默认为FULL。
    • VARIABLES,后面接数据名称。同样为字符串格式,如果有多个数据,用空格或逗号隔开。

    数据则分为 ZONE、TEXT、GEOMETRY、CUSTOMLABELS、 DATASETAUXDATA 和 VARAUXDATA。本文以zone区域进行演示,这也是最主要被用到的。

    其中zone分为 Block和Point两种数据格式,这在之后的章节再解释。

    一个典型的tecplot下ASCII格式的plt文件,如下所示:

    #保存为Example.plt
    #标题
    TITLE = "Example File"
    #变量名
    VARIABLES = "X","F"
    #定义ZONE
    #ZONE
    #定义IJK,一维只需要写I
    zone I = 11,t="F=x*x"
    DATAPACKING=point
    0 0
    0 .1 0.01
    0.2 0.04
    0.3 0.09
    0.4 0.16
    0.5 0.25
    0.6 0.36
    0.7 0.49
    0.8 0.64
    0.9 0.81
    1 1
    
    zone I = 11,t="F=x"
    DATAPACKING=block
    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
    0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
    

    导入到tecplot,勾选symbol,和mapping style 中的show map选项,显示的图像如下:
    在这里插入图片描述
    更多相关信息,可以搜索tecplot的帮助文档,我的版本对应的pdf文档名称为:360_data_format_guide.pdf。

    1.2 zone相关的格式

    数据以zone开头,标志着后面所有内容均为其下的内容,直到另一个数据类型标识为止。

    必须指定的变量有:

    变量含义
    I,J,K数据点的个数。如果是二维,只需要定义IJ。如果是1维,只需定义I

    可以不指定的变量有:

    变量含义
    Tzone的名称
    ZONETYPE可选ordered(默认)和 finite element两种。有限元需要额外的nodes、elements、faces 等信息
    DATAPACKING可选block(默认)和point两种。point可认为是每一行代表一个点,block可认为是每一列代表一个点(虽然tecplot不在乎换行)
    DT储存精度,默认Single。可选Double,single,longint,shortint,byte,bit。其中bit只支持Block格式。
    VARLOCATION可选 NODAL(默认)和CELLCENTERED。其中Cellcentered只支持Block格式,允许在中心定义变量,此时数据点个数应为(I-1)×(J-1)×(K-1)
    SOLUTIONTIME求解时间

    2 一维数据

    一维数据,以抛物线为示例。主要代码为plt_Head和plt_Zone。

    clear
    fclose('all');
    
    
    t=0:0.1:1;
    F=t.^2;
    
    %1准备数据
    filename='example_1D.plt';
    title=[];
    variables={'X','F'};
    Mat_Data=[t(:),F(:)];
    IJK=length(t);
    
    %2创建文件
    if exist(filename,'file') 
        delete(filename)
    end
    f_id=fopen(filename,'a');
    fclose(f_id);
    
    %3创建表头
    plt_Head(filename,'',variables)
    %4创建zone(point)格式
    plt_Zone(filename,'1',IJK,Mat_Data)
    
    
    
    function plt_Head(filename,title,variables)
    %创建表头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone(filename,zone_title,IJK,Mat_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    
    Dim=numel(IJK);
    if Dim==1
        s=['zone I=',num2str( IJK(1) )];
    elseif Dim==2
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) )];
    elseif Dim==3
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) ),',K=',num2str( IJK(3) )];
    end
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %格式为point
    s='DATAPACKING=point';
    fprintf(f_id,'%s \r\n',s);
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    fclose(f_id);
    end
    

    导入到tecplot的结果为
    在这里插入图片描述

    3 二维数据

    二维数据,采用标准的xy网格。包括X、Y、U、V、P5个变量。主要代码为plt_Head和plt_Zone。
    代码和一维相似,如下所示。

    这里要注意IJ的排列顺序,Tecplot里的IJ等于matlab里size(meshgrid(**))生成的尺寸。Tecplot里数据的读取顺序,等效于meshgrid生成的数据,再进行x(:)操作的读取顺序。tecplot里如果这里出错会造成读取错误,但两种软件相似的数据读取方式也减少了不必要的麻烦。

    clear
    fclose('all');
    
    %0数据
    [x,y]=meshgrid(-5:0.5:5,-4:0.5:4);
    u=-sin(x);
    v=cos(y);
    F=u.^2+v.^2;
    
    %1准备数据
    filename='example_2D.plt';
    title='';%无标题
    variables={'X','Y','U','V','F'};
    zone_title='';%无标题
    Mat_Data=[x(:),y(:),u(:),v(:),F(:)];
    IJK=size(x);
    time=[];%无时间
     
    %2创建文件
    if exist(filename,'file') 
        delete(filename)
    end
    f_id=fopen(filename,'a');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    
    
    
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    
    Dim=numel(IJK);
    if Dim==1
        s=['zone I=',num2str( IJK(1) )];
    elseif Dim==2
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) )];
    elseif Dim==3
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) ),',K=',num2str( IJK(3) )];
    end
    
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %格式为point
    s='DATAPACKING=point';
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    fclose(f_id);
    end
    

    将生成的plt文件,导入tecplot生成结果为:
    在这里插入图片描述
    对于二维非定常问题,需要添加SOLUTIONTIME选项,生成程序如下。自定义函数plt_Head和plt_Zone与上一个程序内的相同。

    clear
    fclose('all');
    
    k=0;
    for t=0.2:0.2:3
        k=k+1;
        %0数据
        [x,y]=meshgrid(-5:0.5:5,-4:0.5:4);
        u=-sin(x+t);
        v=cos(y);
        F=u.^2+v.^2;
        
        %1准备数据
        filename=['example_2D',num2str(k,'%02.f'),'.plt'];
        title='';%无标题
        variables={'X','Y','U','V','F'};
        zone_title='';%无标题
        Mat_Data=[x(:),y(:),u(:),v(:),F(:)];
        IJK=size(x);
        time=t;%非定常时间
        
        %2创建文件
        if exist(filename,'file')
            delete(filename)
        end
        f_id=fopen(filename,'a');
        fclose(f_id);
        
        %3创建文件头
        plt_Head(filename,title,variables)
        %4创建zone(point)格式
        plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    
    end
    
    
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    function plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    
    Dim=numel(IJK);
    if Dim==1
        s=['zone I=',num2str( IJK(1) )];
    elseif Dim==2
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) )];
    elseif Dim==3
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) ),',K=',num2str( IJK(3) )];
    end
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %格式为point
    s='DATAPACKING=point';
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    fclose(f_id);
    end
    

    生成的plt文件有15个,每个文件代表某一时刻的流场。打开Tecplot,选择File-Load Data,就可以导入所有时刻的流场。选择Animation-Time就可以进行非定常展示。可以添加文本框,输入 t=&(solutiontime)s即可以显示文字版时间。
    在这里插入图片描述

    4 三维数据

    三维数据采用matlab自带的wind数据。输入load wind,便可得到包含meshgrid格式的x,y,z,u,v,w流场数据。

    程序如下所示,其中自定义函数plt_Head和plt_Zone与第3节程序内的相同。

    clear
    fclose('all');
    load wind
    
    V2=sqrt(u.^2+v.^2+w.^2);
    
    %1准备数据
    filename=['example_3D.plt'];
    title='';%无标题
    variables={'X','Y','Z','U','V','W','V2'};
    zone_title='';%无标题
    Mat_Data=[x(:),y(:),z(:),u(:),v(:),w(:),V2(:)];
    IJK=size(x);
    time=[];
    
    %2创建文件
    if exist(filename,'file')
        delete(filename)
    end
    f_id=fopen(filename,'a');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    
    Dim=numel(IJK);
    if Dim==1
        s=['zone I=',num2str( IJK(1) )];
    elseif Dim==2
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) )];
    elseif Dim==3
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) ),',K=',num2str( IJK(3) )];
    end
    
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %格式为point
    s='DATAPACKING=point';
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    fclose(f_id);
    end
    

    生成example_3D.plt文件,导入tecplot内,可以生成如下的流场示意图。
    在这里插入图片描述

    4.1 非矩形区域的数据导入

    非矩形数据也可以用ijk的形式导入,只要是结构网格。一般的思路是:IJK结构矩形网格→uvw中间参数网格→xyz最终网格。当然网格简单的话,可以直接跳过ijk网格的构造,或跳过uvw网格的构造。复杂的网格建议利用其它结构网格划分软件进行划分。

    下面以一个圆柱坐标系为例。

    clear
    fclose('all');
    %非矩形的结构网格构造方法
    %以柱面坐标为例
    r0=1:0.2:10;
    z0=0:0.1:2;
    theta0=0:0.05:pi;
    
    [r,theta,z]=meshgrid(r0,theta0,z0);
    %转换为xyz坐标系
    x=r.*cos(theta);
    y=r.*sin(theta);
    
    p=cos(r).*sin(4*theta);
    
    %1准备数据
    filename=['example_3D.plt'];
    title='';%无标题
    variables={'X','Y','Z','p'};
    zone_title='';%无标题
    Mat_Data=[x(:),y(:),z(:),p(:)];
    IJK=size(x);
    time=[];
    
    %2创建文件
    if exist(filename,'file')
        delete(filename)
    end
    f_id=fopen(filename,'a');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    

    在这里插入图片描述
    当然如果遇到复杂的结构,单一的结构网格就不太够用了。需要引入多块结构网格,或者非结构网格。

    5 多块数据

    当block存在多个的时候,比如结构网格是由多个block组成的时候,也可以用plt文件进行导入。

    这里只需要保持总的标题不变,其余各个block的按照之前的设置依次输入就行。

    同样代码如下。
    其中自定义函数plt_Head和plt_Zone与第3节和第4节程序内的相同。

    %生成多块网格
    clear
    clc
    fclose('all');
    %0生成数据
    %block1
    load wind
    x_1=x;y_1=y;z_1=z;
    u_1=u;v_1=v;w_1=w;
    V2_1=sqrt(u_1.^2+v_1.^2+w_1.^2);
    %block2
    x_2=x/1.2;y_2=y;z_2=z-min(z_1,[],'all')+max(z_1,[],'all');%这里稍微更改一下网格
    u_2=u;v_2=v;w_2=w;
    V2_2=sqrt(u_2.^2+v_2.^2+w_2.^2);
    
    %1准备数据
    filename=['example_3D_2Blocks.plt'];
    title='';%多block只对应1个文件标题。这里为了省事,设置无标题。
    variables={'X','Y','Z','U','V','W','V2'};
    zone_title='';%无标题
    Mat_Data_1=[x_1(:),y_1(:),z_1(:),u_1(:),v_1(:),w_1(:),V2_1(:)];
    Mat_Data_2=[x_2(:),y_2(:),z_2(:),u_2(:),v_2(:),w_2(:),V2_2(:)];
    IJK_1=size(x_1);
    IJK_2=size(x_2);
    time=[];
    
    %2创建文件
    if exist(filename,'file')
        delete(filename)
    end
    f_id=fopen(filename,'a');
    fclose(f_id);
    
    %Block1
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone(filename,zone_title,IJK_1,time,Mat_Data_1)
    %Block2
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone(filename,zone_title,IJK_2,time,Mat_Data_2)
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone(filename,zone_title,IJK,time,Mat_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    
    Dim=numel(IJK);
    if Dim==1
        s=['zone I=',num2str( IJK(1) )];
    elseif Dim==2
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) )];
    elseif Dim==3
        s=['zone I=',num2str( IJK(1) ),',J=',num2str( IJK(2) ),',K=',num2str( IJK(3) )];
    end
    
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %格式为point
    s='DATAPACKING=point';
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    fclose(f_id);
    end
    
    
    
    

    在这里插入图片描述

    6 二维非结构网格

    tecplot的非结构数据形式也比较简单。分为两个部分,第一个部分为每个节点处的信息,第二部分为非结构网格的每个网格的由哪几个点构成。

    下面为一个简单的二维非结构的plt

    VARIABLES = "X", "Y", "P"
    ZONE T="TRIANGLES", NODES=4, ELEMENTS=2, DATAPACKING=POINT, ZONETYPE=FETRIANGLE
    #每个点的信息( NODES=4)
    0.0 0.0 0.0
    0.0 1.0 1.2
    1.0 1.0 -2.0
    1.0 0.0 0.0
    #每个网格由哪几个点组成(ELEMENTS=2)
    1 2 3
    1 3 4
    

    在这里插入图片描述

    非结构网格的ZONETYPE分为

    ZONETYPE网格点数
    FETRIANGLE二维三角网格3点
    FEQUADRILATERAL二维四边形网格4点
    FETETRAHEDRON三维四面体网格4点
    FEBRICK三维六面体网格8点

    二维或者曲面的,使用FETRIANGLE和FEQUADRILATERAL就可以。

    对于混合了三角形和四边形的网格,按照四边形网格计算就行。但是三角形区域需要通过重复,变成ABCC的形式,凑齐4个点的格式。
    还是举个例子:

    VARIABLES = "X", "Y", "P"
    ZONE T="TRIANGLES", NODES=6, ELEMENTS=3, DATAPACKING=POINT, ZONETYPE=FEQUADRILATERAL
    #每个点的信息
    0.0 0.0 0.0
    0.0 1.0 0.0
    1.0 1.0 -1.0
    1.0 0.0 -1.0
    -1.0 0.0 1.0
    -1.0 1.0 1.0
    #每个网格由哪几个点组成
    1 2 3 4
    5 6 2 2
    1 2 5 5
    

    在这里插入图片描述
    左侧两个三角形网格,需要通过5 6 2 2的形式,重复一个节点,来凑齐ZONETYPE = FEQUADRILATERAL 所要求的每个网格4个点的条件。

    复杂的非结构网格需要自己依据的模型来构造,也可以借用其他网格划分软件进行网格定义。这里不是本文的重点。

    下面给出一个已知很多离散点的信息,在tecplot里绘图的例子:

    clear
    fclose('all');
    %非结构面网格的处理(二维)
    %这里是生成的数据
    x=gallery('uniformdata',[300,1],0);
    y=gallery('uniformdata',[300,1],1);
    p1=sin((x+y)/2*4*pi);
    p2=cos(sqrt(x.*y)*4*pi);
    %1准备数据
    filename=['example_2D_Surface_U.plt'];
    title='';%无标题
    variables={'X','Y','P1','P2'};
    zone_title='';%无标题
    %准备每个点的信息
    Mat_Data=[x(:),y(:),p1(:),p2(:)];
    %准备每个非结构网格的信息
    Tri_Data=delaunay(x,y);%这里默认是实心的不规则离散点。其它特殊形状的不适用。
    time=[];
    
    %2创建文件
    f_id=fopen(filename,'w');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone_U(filename,zone_title,time,Mat_Data,Tri_Data)
    
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone_U(filename,zone_title,time,Mat_Data,Tri_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    E=size(Tri_Data,1);
    
    s=['ZONE NODES=',num2str(N),', ELEMENTS=',num2str(E),', DATAPACKING=POINT, ZONETYPE=FETRIANGLE'];
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    %导入网格
    for k=1:E
        fprintf(f_id,'%s \r\n',num2str(Tri_Data(k,:)));
    end
    fclose(f_id);
    end
    

    在这里插入图片描述

    6.1 简单的曲面演示

    曲面的构造形式和二维一样,这里也简单做一个小演示。
    为了演示,这里用的是四边形的非结构网格,ZONETYPE=FEQUADRILATERAL。

    clear
    fclose('all');
    %非结构面网格的处理(二维)
    %这里是生成的数据
    [x,y]=meshgrid(-3:0.2:3,-3:0.2:3);
    z = 0.5*peaks(x,y);
    p1=sin((x+y)/2*pi);
    p2=cos(sqrt(x.*y)*4*pi);
    %1准备数据
    filename=['example_2D_Surface_U4.plt'];
    title='';%无标题
    variables={'X','Y','Z','P1','P2'};
    zone_title='';%无标题
    %准备每个点的信息
    Mat_Data=[x(:),y(:),z(:),p1(:),p2(:)];
    %准备每个非结构网格的信息(这里用的是投影在xy平面上的点,划分二维网格)
    Tri_Data=delaunay(x,y);%这里默认是实心的不规则离散点。其它特殊形状的不适用。
    Nx=size(x,1);
    Ny=size(y,2);
    Quad_Data=zeros((Nx-1)*(Ny-1),4);
    n=1;
    for k=1:Nx-1
        for j=1:Ny-1
            Quad_Data(n,1)=sub2ind(size(x),k,j);
            Quad_Data(n,2)=sub2ind(size(x),k+1,j);
            Quad_Data(n,3)=sub2ind(size(x),k+1,j+1);
            Quad_Data(n,4)=sub2ind(size(x),k,j+1);
            n=n+1;
        end
    end
    
    time=[];
    %2创建文件
    f_id=fopen(filename,'w');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone_U4(filename,zone_title,time,Mat_Data,Quad_Data)
    
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone_U4(filename,zone_title,time,Mat_Data,Tri_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    E=size(Tri_Data,1);
    
    s=['ZONE NODES=',num2str(N),', ELEMENTS=',num2str(E),', DATAPACKING=POINT, ZONETYPE=FEQUADRILATERAL'];
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    %导入网格
    %四点网格
    for k=1:E
        fprintf(f_id,'%s \r\n',num2str(Tri_Data(k,:)));
    end
    fclose(f_id);
    end
    

    效果如下(后面的背景是利用tecplot上面菜单栏的Plot-Axis,点击选中Show-X-Axis、Show-Y-Axis、Show-Z-Axis画的)。
    在这里插入图片描述

    7 三维非结构网格

    之前介绍了二维非结构网格。三维的网格和二维网格思路上一样,就是zonetype不一样。

    三维这里使用FETETRAHEDRON 和 FEBRICK ,分别对应三维四面体网格和三维六面体网格。

    如果遇到了混合网格,或不规则的三棱柱、四棱锥等网格,处理方法也和二维的思路一样,统一采用FEBRICK格式,然后将那些没有凑齐8个点的网格,都利用重复补齐至8个点。

    下面同样给出一个已知很多离散点的信息,在tecplot里绘图的例子:

    clear
    fclose('all');
    %非结构体网格的处理(三维)
    %这里是生成的数据
    x=gallery('uniformdata',[800,1],0);
    y=gallery('uniformdata',[800,1],1);
    z=gallery('uniformdata',[800,1],2);
    p1=sin((x+y+z)/3*4*pi);
    p2=cos((x.*y.*z).^(1/3)*4*pi);
    %1准备数据
    filename=['example_3D_Block_U.plt'];
    title='';%无标题
    variables={'X','Y','Z','P1','P2'};
    zone_title='';%无标题
    %准备每个点的信息
    Mat_Data=[x(:),y(:),z(:),p1(:),p2(:)];
    %准备每个非结构网格的信息
    Tri_Data=delaunay(x,y,z);%这里默认是实心的不规则离散点。其它特殊形状的不适用。
    time=[];
    
    %2创建文件
    f_id=fopen(filename,'w');
    fclose(f_id);
    
    %3创建文件头
    plt_Head(filename,title,variables)
    %4创建zone(point)格式
    plt_Zone_U3(filename,zone_title,time,Mat_Data,Tri_Data)
    
    
    function plt_Head(filename,title,variables)
    %创建文件头
    f_id=fopen(filename,'a');
    %名称
    if ~isempty(title)
        s=['TITLE = "',title,'"'];
        fprintf(f_id,'%s \r\n',s);
    end
    
    %变量
    v=numel(variables);
    s='VARIABLES = ';
    for k=1:v
        if k~=1
            s=[s,','];
        end
        s=[s,' "',variables{k},'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    fclose(f_id);
    
    end
    
    
    function plt_Zone_U3(filename,zone_title,time,Mat_Data,Tri_Data)
    %创建zone,point格式
    f_id=fopen(filename,'a');
    N=size(Mat_Data,1);
    E=size(Tri_Data,1);
    
    s=['ZONE NODES=',num2str(N),', ELEMENTS=',num2str(E),', DATAPACKING=POINT, ZONETYPE=FETETRAHEDRON'];
    
    %标题
    if ~isempty(zone_title)
        s=[s,',t="',zone_title,'"'];
    end
    fprintf(f_id,'%s \r\n',s);
    %定义非定常时间
    if ~isempty(time)
        s=['SOLUTIONTIME=',num2str(time)];
        fprintf(f_id,'%s \r\n',s);
    end
    
    
    %导入数据
    for k=1:N
        fprintf(f_id,'%s \r\n',num2str(Mat_Data(k,:)));
    end
    %导入网格
    for k=1:E
        fprintf(f_id,'%s \r\n',num2str(Tri_Data(k,:)));
    end
    fclose(f_id);
    end
    

    在这里插入图片描述

    展开全文
  • Tecplot储存数据常用的有两种方式,一种是Point,另一种是Block point形式就是一行代表一个点(x,y,z,var) block形式是坐标值和变量值作为整体,先记录所有x值,接着所有y值,依次类推 二、线形图 1.一表多图...

    一、常用格式

    Tecplot储存数据常用的有两种方式,一种是Point,另一种是Block

    point形式就是一行代表一个点(x,y,z,var)

    block形式是坐标值和变量值作为整体,先记录所有x值,接着所有y值,依次类推

    二、线形图

    1.一表多图(同横坐标)

    图1 同横坐标多曲线
    title="test"
    variables="x","r","p"
    zone t="line"
    i=6,f=point
    0 0 4 
    1 0 6
    2 4 5
    3 1 9
    4 1 4
    5 3 6

     

    2.一表多图(不同横坐标)

    有两种方法:(1)Tecplot载入两张图,然后调整Mapping Style;(2)在一张表中设置多个zone

    (1)

    title="test"
    variables="x","r","p"
    zone t="line"
    i=6,f=point
    0 0 4 
    1 0 6
    2 4 5
    3 1 9
    4 1 4
    5 3 6

     

    title="test"
    variables="x","r","p"
    zone t="line2"
    i=7,f=point
    0   5 2
    0.5 6 4
    1   7 5
    2   6 4
    3   10 3
    3.5 8 2
    3.6 6 2

     

     然后根据需要调整线条,颜色,图示等。

    (2)

     

    title="test"
    variables="x","r","p"
    zone t="line"
    i=6,f=point
    0 0 4 
    1 0 6
    2 4 5
    3 1 9
    4 1 4
    5 3 6
    
    zone t="line2"
    i=7,f=point
    0   5 2
    0.5 6 4
    1   7 5
    2   6 4
    3   10 3
    3.5 8 2
    3.6 6 2

    3.一表多图(不同纵坐标)

    右键

     

     

    三、平面图形

     

    title="unstru"
    VARIABLES = X,Y
    ZONE, N=6, E=2, F=FEPOINT, ET=QUADRILATERAL
    0.0 0.0 
    1.0 0.0
    2.0 0.0
    -1.0 1.0
    0.0 1.0
    1.0 1.0
    
    1 2 5 4
    2 3 6 5

    N=6表示6个点

    E=2表示2个有限元

    F=FEPOINT表示point形式

    ET=QUADRILATERAL表示四边形

    之后是点的Variables

    之后是有限元的组成点的集合

    数据分为有结构数据和无结构数据,上述描述的是无结构数据的绘制方法,必须要用FEPOINT。

    混合网格
    title="unstru"
    VARIABLES = X,Y
    ZONE, N=6, E=2, F=FEPOINT, ET=QUADRILATERAL
    0.0 0.0 
    1.0 0.0
    2.0 0.0
    -1.0 1.0
    0.0 1.0
    1.0 1.0
    
    1 2 5 4
    2 3 6 5
    
    ZONE, N=3, E=1, F=FEPOINT, ET=TRIANGLE
    0.0 0.0 
    1.0 0.0
    2.0 -1.0
    
    
    1 2 3

     

    刚好用到,随手记,可能不太详细,详情见参考资料。

     

     

    参考资料

    1. Tecplot中文教程 - 共享版
    2. TECPLOT非结构网格数据格式

    展开全文
  • 只能局部设置中文字体。 #coding:utf-8 import matplotlib as mpl from matplotlib.font_manager import * import matplotlib.pyplot as plt mpl.rcParams.update({ 'font.family': 'sans-serif', 'font....
  • matplotlib三个作用域字体设置方法 对当前的代码块matplotlib起作用 import matplotlib.pyplot as plt myfont = fm.FontProperties(fname=‘C:\Windows\Fonts\STHUPO.TTF’) plt.title(‘我的第一个图表’,fontsize=...
  • 写在前面LES的计算中,实际上对网格是有要求滴,这方面内容可以从相关文献中找到,本文只是针对LES的计算设置进行一个简单的2D圆柱扰流讲解,不涉及网格要求方面,童鞋们要注意这一点哇!文主花了两天时间学习FLUENT...
  • 解决Qt5 embedded 中文问题

    千次阅读 2014-10-21 17:36:24
    /usr/shared/fonts/truetype/arphic字体拷贝出来,放到开发板的fonts文件夹,并设置环境变量:export QT_QPA_FONTDIR=/opt/fonts_4.29 通过上述两部可以解决Qt5中文显示问题;
  • 作者的话:本人在学习palabos时,发现国内中文资料甚少,恰好网上可以直接搜到palabos user guide这种英文资料,加之时间充裕,便打算开始翻译,翻了一节后发现这可能算侵权,就比较伤脑筋,突然想到自己写中文解读...
  • gnuplot 入门教程 1

    万次阅读 多人点赞 2013-01-14 20:42:07
    现在在网上可以找的科学作图软件有不少,其中不乏优秀者,Win平台上有大名鼎鼎的Origin、Tecplot、SigmaPlot等,类UNIX上有LabPlot、gnuplot等。其他的常见的计算软件如Matlab、Mathematica、Maple、Scilab、IDL、...
  • 绘制气温变化图

    千次阅读 2019-06-17 14:55:11
    目录 1.创建画布 2.进行绘制 (1)数据准备 (2)进行绘制 (3)图形添加修饰 3.图形展示 .创建画布 import matplotlib....#设置RC参数 # 默认不支持中文 想要使用中文,要设置RC参数 plt.rcParams['f...
  • 如果是用的中文的话,记得encoding参数设置为gb18030 2 获取值 pandas是一个数据框,里面也含有表头。我们只关心它的内容,所以,我们使用.values方法来获取 具体操作为: data = train.values 3 转换为浮点类型...
  • ABAQUS后处理常用功能

    万次阅读 2017-02-16 15:50:34
    ABAQUS分析完成后,除了看看动画,看看云图,可能还需要进行其他操作,此处记录自己常用的一些功能在哪设置
  • 用户通过输入命令,逐步设置或修改绘图环境,并以图形描述数据或函数。优点是画图速度快、画风清爽,软件开源且免费,图片质量相当专业。缺点是:需要写代码。 第 8 名:高冷风 Matplotlib Matplotlib 是著名 ...
  • arcgis水文分析

    2017-12-25 20:08:00
    前言 1.在开始之前首先需要注意几点:  1.arcgis 需要 python2.7 的... 2.arcgis 很多时候出现未知错误可能是因为路径设置问题,路径一定不要含有中文,不要含有中文,不要含有中文,血的教训。 准备工作 ...
  • 数学工具常见问题集

    千次阅读 2013-10-17 17:25:25
    专用数学包包括绘图软件类(MathCAD,Tecplot,IDL,Surfer,Origin, SmartDraw,DSP2000),数值计算类:(Matcom, IDL,DataFit,S-Spline,Lindo,Lingo,O-Matrix,Scilab,Octave), 数值计算库(linpack/lapack/BLAS/GERMS/...
  • MATLAB图像处理(包括图像类型转换)

    万次阅读 多人点赞 2017-10-08 16:52:01
    第一章 绪论 图形图像处理起源于20世纪20年代,当时通过海底电缆从英国伦敦到美国纽约采用数字压缩技术传输了第一幅数字照片,用来改善图像的质量。此后由于遥感等领域的应用,使得图形图像处理技术逐步得到...
  • 性地基上的厚板,其中单压土壤弹簧是基于地基作用的模量自动进行离散分布,可以给每个对象单独设置地基模量。 3) 软件生成钢筋 布置,并且计算柱底周围的冲切剪力对基础的影响。在基于平板配筋的有限元模型中,软件...
  •  第一章 绪论 图形图像处理起源于20世纪20年代,当时通过海底电缆从英国伦敦到美国纽约采用数字压缩技术传输了第一幅数字照片,用来改善图像的质量。此后由于遥感等领域的应用,使得图形图像处理技术...
  • 转载:数学工具常见问题集

    千次阅读 2007-05-16 16:38:00
    首页 | 信息资讯 | 个人文集 | 资源检索 | 浏览精彩论坛
  • 格子玻尔兹曼法学习记录(附MATLAB画图源程序)

    千次阅读 多人点赞 2019-03-30 16:59:37
    感谢群里的朋友们提供帮助!还是老样子,有啥问题Feel free to tell us~毕竟群众力量大嘛~格子...我在某宝买了中文版,杨大勇翻译的,中国工信出版。 还可以看英文原版哈,英文教材链接:https://pan.baidu.c...
  • 网上FLAC3D学习笔记

    万次阅读 2010-11-07 10:42:00
    建议:初学者将 ...tecplot 进行 FLAC3D 结果的后处理,看下面两个帖子就可以速成了。 http://www.simwe.com/forum/viewthread.php?tid=283356&extra=page%3D1%26filter%3Dtype%26typeid%3D37 ...
  • 的图形表示和设置属性信息。 30表格与GOST和规格自动生成有助于准确报表文件的一部分的可能性相致。基本标准元素包含3000个参数的建 筑,如梁,柱,梁,板,基础块,金属,紧固件等参数的基础是开放的编辑...
  • 写高质量代码和程序的人,少之又少,大多数人还停留在询问matlab中如何设置计算精度 (实际上只是显示精度)、安装matlab后启动总是有一个matlabserver.exe运行这样一类低 级问题的阶段。他们哪怕有自己的一套理论或者...

空空如也

空空如也

1 2
收藏数 38
精华内容 15
关键字:

tecplot设置中文