fortran语言快速学习
基础语言介绍
DIMENSION 用于定义数组
DIMENSION
& HO(NG) !定义名为HO的一维数组,数组的个数是NG
&符号代表这一行没有写完换行继续写。 !符号代表注释 ,C也是注释
REAL 浮点数型
REAL*2 MACH_REL(NG),MACH_ABS(NG) !定义了浮点数组 *2代表在double的类型上的字节进行加倍扩展
CHARACTER*10 字符串类型,长度是10
CHARACTER*10 & IFSAME_RAD, IF_RDES, IFHUB !定义了三个名为,,,的字符串,每个字符串变量可存储的字节长度是10
OPEN(commision,location)打开指定文件
OPEN(UNIT=10, FILE= 'meangen.out') !打开exe文件目录下的meagen.out文件,并命为10,方便调用OPEN(UNIT=5, FILE= '/dev/tty') !打开(路径)/dev/tty文件,并命名为2.
WRITE(name,form) 往指定的文件中写,每使用一次write代表写入一行 。FORMAT()格式设计,很多不展开
WRITE(6,*) ' WELCOME TO MEANGEN ' !名为6的文件中写入字符串welcome to meangen,“*"代表写入不限格式 WRITE(10,106) IFHUB106 FORMAT(A1,T25, ' CHOICE OF DESIGN POINT RADIUS, HUB, MID or TIP') !在名为6的文件中写入变量IFHUB的值,按照106行的格式。106代表行标识
READ(name,form) 读取文件数据,注意一个read读取文件的一行
READ(5,*) ANSIN !读取5号文件中的一行,不限定类型 赋值给ANSIN变量!如果不给变量,代表读空一行,(并不是所有行都有数据)
判断符号 变量是否相等,是否A>B
IF(FLO_TYP.EQ.'AXI') THEN !字符变量FLO_TYP中的值与'AXI'字符是否相等,注意前后的两个“.”.LE. 代表≤.GE. 代表≥.LT. 代表<.GT. 代表>
逻辑判断符号 与和或
逻辑与 .AND.
逻辑或 .OR.
CALL 命令符 代表调用子程序,后面加程序名
CALL SMOOTH2(1,NSS,NSMOOTH,SFAC,XMEAN,RMEAN) !调用名为SMOOTH2的子程序,()里面的代表形参
SUBROUTIME 命令符创建一个子程序
SUBROUTINE SMOOTH2(N1,N2,NSMOOTH,FSMOOTH,XVAL,RVAL)PARAMETER(NG=99, NST=20, NSC= 11)DIMENSION XVAL(NG),RVAL(NG),TEMPX(NG),TEMPR(NG)DO 10 ITS = 1,NSMOOTH !执行行标为10的那一行(此注释的正确性有带考究)DO N = N1,N2TEMPX(N) = XVAL(N)TEMPR(N) = RVAL(N)END DODO N = N1, N2-2XVEC = TEMPX(N+2) - TEMPX(N)RVEC = TEMPR(N+2) - TEMPR(N)SVEC = SQRT(XVEC*XVEC + RVEC*RVEC)XVEC = XVEC/SVECRVEC = RVEC/SVECXDIF = TEMPX(N+1) - TEMPX(N)RDIF = TEMPR(N+1) - TEMPR(N)PROJ = XVEC*XDIF + RVEC*RDIFXNORM = XDIF - PROJ*XVECRNORM = RDIF - PROJ*RVECXVAL(N+1) = TEMPX(N+1) - FSMOOTH*XNORMRVAL(N+1) = TEMPR(N+1) - FSMOOTH*RNORMEND DO10 CONTINUE !没有意义,从这里继续执行RETURNEND
FUNCTION 命令符创建一个函数
FUNCTION PLANCK(LAMB,T) RESULT(F)IMPLICIT NONEREAK*8 :: LAMB,T,FREAL*8 :: PI,NIUT,TT,X0PI=2.0D0*DASIN(1.0D0)NIUT=852/LAMBTT=T/168800X0=NIUT/TTF=(15.0/Pi**4.0)*(EXP(-X0)*(X0**3.0)+3.0*X0**2.0+6.0) !PI**4.0代表PI的四次方RETURNEND FUNCTION PLANCK
数学函数 TAN()->tan(); SIN()->sin(); COS()->cos();ASIN()->arcsin();注意的是()内的参数必须是弧度,如果有角度值,必须转换成弧度。ABS()->求绝对值;
PITCH_ANGL(1) = ASIN( (RMEAN(2)-RMEAN(1))/(SDIST(2)-SDIST(1)) )
结构语句IF DO
DO N = 1,NSSFBLOCK(N)= FBLOCK_LE(NSTG)+DBLOCK_DS*(SDIST(N)-SDIST(NLE1))END DOIF(NSTG.EQ.1.AND.TURBO_TYP.EQ.'C') THENPHI_REF = PHI_STG1*VMRAT(NLE1)/VMRAT(NLE2)*RMEAN(NLE2)/RMEAN(NLE1)ELSEPHI_REF = PHI_STG1END IF
PROGRAM 主程序命令符
PROGRAM MIAN!codeEND MAIN
Author:yongqing
fortran语言快速学习相关推荐
- go语言快速学习指南
哈喽,大家好,不知道出于什么原因,突然想学习一门"靠谱的语言",随便想想,原因可能有很多, 如: 从事.net 我还能走多远?走多深的技术? 如果未来的某一天.net core升级 ...
- R语言快速学习第二部分(有其他语言基础)
文章目录 空值NA 与 缺失值NULL 向量(vector) 列表(list) 矩阵(matrix) 数组(array) 因子(factor) 数据框(data.frame) R语言数据对象包括以下几 ...
- 【gRPC】ProtoBuf 语言快速学习指南
继上篇[gRPC] 在.Net core中使用gRPC了解了gRPC的使用,gRPC基于HTTP/2和ProtoBuf,ProtoBuf就非常有必要好好了解一下了, 那么ProtoBuf究竟是什么? ...
- R语言快速学习第一部分(有其他语言基础)
文章目录 注意事项 1.输出内容 输出到控制台: 输出到文件 2.数字运算符 数字运算符 赋值 3.流程控制 if 判断语句 switch 判断语句 循环语句 4.函数 注意事项 R 语言区分大小写, ...
- C语言快速学习笔记001-相关语法
->在C语言中称为间接引用运算符,是二目运算符,优先级同成员运算符".". 用法: p->a,其中p是指向一个结构体的指针,a是这个结构体类型的一个成员.表达式p-&g ...
- FORTRAN语言(Formula Translation)自学笔记
FORTRAN语言是Formula Translation的缩写,意为"公式翻译",工程界最常用的编程语言,它在科学计算中(如航空航天.地质勘探.天气预报和建筑工程等领域)发挥着极 ...
- 快速学习R语言的经验分享
R语言的学习途径主要有几个:一个是R语言书籍:一个是R帮助文档:还有就是R视频和一些干货教程了. 越来越多的R学习者开始在网上分享自己的学习笔记,有的人会搭建自己的博客平台,有的人会使用现成的平台,其 ...
- 十五张思维导图带你快速学习PHP语言基础
在打算系统的学习 Laravel 之前,我抽空看了 PHP 语言基础,并且绘制了各个部分的思维导图,以方便自己从一些图片就可以查看相关知识的全貌. 这部分思维导图整理自菜鸟教程的 PHP 教程. 思维 ...
- slua 是c语言开发的吗,初学者必备文档:LUA新手快速学习笔记
LUA程序设计语言 是一个简洁.轻量.可扩展的脚本语言.LUA读作/'lua/(噜啊),是葡萄牙语中"Luna"(月亮)的意思. LUA的目标是成为一个很容易嵌入其它语言中使用的语 ...
最新文章
- 转:初探 jQuery 的 Sizzle 选择器
- 关于SVN Server自助修改密码详细教程
- COJ 1006 树上操作
- JSON学习笔记(五)- JSON.stringify()
- 总结从linux - windows 上(GCC与MSVC 2015) 移植C或者C++代码时候遇到的编译和链接问题
- 方案计数(带修计数题/线段树)
- 用批处理替换文件中的内容
- Python:遍历指定目录下所有的c语言源代码文件
- java同一程序只运行一次_如何使自己的程序只运行一次
- delphi 防止程序双开 更好的 Best!
- 开源项目:RGB转BMP
- 概率论基础3----分布
- 智慧消防用电安全监控系统解决方案
- lte网络是什么意思
- linux查找文件重复项,Linux中如何使用命令查找重复文件
- 使用手册 煤矿风险管控系统_煤矿风险分级管控手册.doc
- 火影忍者新忍出击服务器正在维修,火影忍者手游更新公告 新忍出击资源翻倍...
- (已解决)win10重装后无法开启双显示屏
- 更改 Windows 11 上的网络适配器优先级
- 自动驾驶领域的Android?百度能否超越特斯拉和谷歌