资源描述:
《随机波浪zuixinban》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、土木建筑学院随机波浪课程作业用fortran写tecplot的二进制文件2008-06-1921:55tecplot的文件分为ASCII码和二进制两种,二进制文件的大小要远小于前者,对于节约空间较为有利;另外tecplot在打开ASCII码文件是要先把它转化为二进制文件,当文件较大时速度奇慢。然而二进制文件的生成方法较为复杂,一位浙大的同学帖子中有介绍,并且给出了用C语言直接写二进制文件的程序。具有很好的参考价值。http://hi.baidu.com/hepei63/blog/item/32f9dd0f73c018e9ab645
2、7f2.html不过该程序只能写单区的文件,如何写多区文件呢?进过两天的实验,我用FORTRAN语言写了一个,然后又弄了多区的文件。现在贡献给大家,希望有用。tecplot安装目录里的utilpreplotpreplot.c的最后部分详细介绍了二进制文件的格式,各个版本的格式不完全一样,本程序是参照TECPLOT10.0格式写的。先来一个简单的单区的:programtecbinimplicitreal*4(a-h,o-z)integer,parameter::imax=50integer,parameter::jmax=25i
3、nteger,parameter::kmax=50Integer*4I,J,K,GTYPEcharacter*40Title,varcharacter*40Varname1,Varname2,Varname3,Varname4character*40Zonename1real(kind=8)::x(imax,jmax,kmax) !xcoordinatereal(kind=8)::y(imax,jmax,kmax) !ycoordinatereal(kind=8)::z(im
4、ax,jmax,kmax) !zcoordinatereal(kind=8)::den(imax,jmax,kmax) !densityREAL*4ZONEMARKER,EOHMARKERZONEMARKER= 299.0EOHMARKER= 357.0 open(unit=99,file="tecbin.plt",form="BINARY")c I.Theheadersection.c------1.1Magicnumber
5、,Versionnumberwrite(99)"#!TDV101"32土木建筑学院随机波浪课程作业c-----1.2.Integervalueof1.---------------------------------------------------------- write(99)1c-----1.3.Titleandvariablenames.-------------------------------------------------c-----1.3.1.TheTITLE.Title="Thisismyfir
6、stbinfile."calldumpstring(Title)c-----1.3.2Numberofvariables(NumVar)inthedatafile.write(99)4c------1.3.3Variablenames.N=L[1]+L[2]+....L[NumVar]Varname1='X'calldumpstring(Varname1) Varname2='Y'calldumpstring(Varname2)Varname3='Z'calldumpstring(Varname3) Varname4='den
7、sity'calldumpstring(Varname4)c-----1.4.Zones-------------------------------------------------------------------c--------Zonemarker.Value=299.0write(99)ZONEMARKERc--------Zonename.Zonename1="ZONE001"calldumpstring(Zonename1)c---------ZoneColor write(99)-1c---------
8、ZoneType 32土木建筑学院随机波浪课程作业 write(99)0c---------DataPacking0=Block,1=Point write(99)1c---------SpecifyVarLocation.0=D