气象信息系统工程 - fortran语言篇
date
Jul 2, 2024
slug
fortran-1
status
Published
tags
fortran
summary
type
Post
《气象信息系统工程》一命速通Hands on Fortran & OpenGrads
Fortran与OpenGrads
气象绘图软件:OpenGrads
用于
4D
数据的分析,即经度lon
、纬度lat
、层次lev
和时间time
的4维。使用流程:准备数据
*.grd
-> 数据描述文件*.ctl
-> 脚本文件*.gs
-> 保存结果Fortran语言基础
数据类型
整数类型
integer
实数类型 real
复数类型 complex
字符类型 character
逻辑类型 logical
常量声明
先声明类型,再用
parameter
声明为常量。合法的变量声明
变量初始化
作业1 马格努斯经验公式计算饱和水汽压
其中
顺序结构
顺序结构:A→B
先执行A,再执行B,先上后下,先左后右(赋值语句先右后左)
表控输入
可以从键盘中输入
4,4,24,10
或者中间使用4 4 24 10
则 a=3.7, b=-1.8, c=24, d=10也可以输入
2*4, 24, 10
效果类似表控输出
print
只能是一计算机系统隐含指定的打印机(或者显示器)进行打印输出,形式为print *[, 输出表]
write
可以指定任意进行打印输出,形式为write (*,*)[, 输出表]
format格式化
作业2 汛期气象站计算
输入3个气象站5个月(汛期)雨量数据,统计每个气象站的总雨量和平均雨量,计算3个站五月、六月、七月、八月、九月的平均雨量,输出每个气象站每个月的雨量、总雨量和平均雨量,以及五月、六月、七月、八月、九月的平均雨量。

选择结构
判断输入的 pH 值是否表示酸雨
n2
的值来判断大气的层结类型循环结构
do
循环结构和 do while
循环结构
循环输入一周日最高气温,判断最高气温,并计算一周平均最高气温。2014年3月23日-29日南京日最高气温如下:
16.0 17.0 17.0 18.0 16.0 22.0 24.0(单位:℃)循环输入每六小时降水资料,如果发现数据小于0或者大于1000时,终止循环,并提示输入数据异常。
输入正整数n,求级数的前n项和,如果当某项绝对值≤10-5时,虽未满n项,也因满足精度而不再加入下一项。
输入3月份气温,缺测记录为999,请统计3月份平均气温
作业3 江淮站点

数组
已知某气象台站7月17日至7月21日每天4个观测时间(即02,08,14,20时刻)的温度观测值,要求编程实现下列功能:
(1) 统计每天的平均温度。
(2) 统计7月17日至21日总的温度平均值。
(3) 输出日平均温度的最高值。
(4) 统计5天中每天4个观测时间的温度平均值。

子程序
已知上海、南京、武汉三地的气温,编制外部函数子程序计算三地的平均气温
外部子程序
内部子程序
虚实结合
变量作用域和生存周期