《FORTRAN程序设计权威指南》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:白海波等编著
  • 出 版 社:北京:机械工业
  • 出版年份:2013
  • ISBN:9787111421146
  • 页数:548 页
图书介绍:本书共分为18章,主要内容包括计算机系统概述、FROTRAN编译器的安装及使用、程序设计方法与程序算法、FROTRAN语言的基础知识点、输入输出及声明、选择结构、循环结构设计、数组、过程、文件、结构体及指针、FROTRAN模块及面向对象方法、FROTRAN数据结构及算法、常用的数值计算方法和Coarray与并行计算等FROTRAN语言的基础及高级内容。

第1章 FORTRAN语言简介 1

1.1 FORTRAN的发展历史 1

1.2 FORTRAN的新发展 3

1.3 FORTRAN语言的特点 4

第2章 FORTRAN编译器的安装及使用 5

2.1编译器简介 5

2.1.1 Compaq Visual FORTRAN编译器 5

2.1.2 Intel Visual FORTRAN编译器 6

2.2 Visual FORTRAN的安装 7

2.2.1 Visual Studio 2010安装 7

2.2.2 Intel Visual FORTRANXE 2011安装 10

2.3 Visual FORTRAN的使用 11

2.3.1初次使用配置 11

2.3.2用Visual FORTRAN编写、编译运行程序 12

2.3.3用Visual FORTRAN调试程序 15

2.3.4利用Intel Visual FORTRAN移植Compaq VisualFORTRAN的工程 18

2.4本章小结 19

第3章 程序设计方法及程序算法 20

3.1程序设计方法简介 20

3.2算法的概念及特性 21

3.2.1算法的概念 21

3.2.2简单算法举例 22

3.2.3算法的特性 26

3.3算法的表示方法 27

3.3.1用自然语言表示算法 27

3.3.2用流程图表示算法 28

3.3.3三种基本结构 31

3.3.4用N-S流程图表示算法 34

3.3.5用伪代码表示算法 36

3.3.6用计算机语言表示算法 38

3.4本章小结 39

第4章 二进制及FORTRAN程序设计基础 40

4.1计算机中数据的表示方法 40

4.1.1计算机中的进位数制 40

4.1.2机器数和码制 42

4.2 FORTRAN字符集 44

4.2.1英文字母 45

4.2.2数字 45

4.2.3下划线 45

4.2.4特殊字符 45

4.2.5 FORTRAN中的关键字 45

4.3 FORTRAN书写格式 46

4.3.1固定格式 46

4.3.2自由格式 48

4.3.3兼容源程序格式 49

4.4 FORTRAN程序结构 50

4.4.1 FORTRAN程序单元 50

4.4.2 FORTRAN语句顺序 52

4.4.3空格的使用 53

4.4.4注释的书写 54

4.5 FORTRAN数值型常量及其类型 55

4.5.1整型常量 55

4.5.2实型常量 55

4.5.3复型常量 56

4.5.4字符型常量 56

4.5.5符号常量 56

4.6 FORTRAN变量 57

4.6.1变量的命名规则 57

4.6.2变量的声明 58

4.6.3整型变量 59

4.6.4实型变量 61

4.6.5复型变量 63

4.6.6字符及字符串 64

4.6.7逻辑型变量 66

4.6.8变量的初始化 67

4.7运算符及表达式 68

4.7.1算术运算符及表达式 69

4.7.2关系运算符及表达式 71

4.7.3逻辑运算符及表达式 73

4.8运算符优先级 76

4.9语句 76

4.9.1赋值语句 77

4.9.2 INCLUDE语句 79

4.9.3程序控制语句 80

4.10本章小结 81

第5章 输入输出及声明 82

5.1输入输出概述 82

5.2简单输入语句 82

5.2.1 READ语句输入形式一 83

5.2.2 READ语句输入形式二 84

5.2.3 READ语句使用注意事项 84

5.3简单输出语句 86

5.3.1 PRINT输出语句 86

5.3.2 WRITE输出语句 87

5.3.3表控输出语句注意事项 88

5.4格式化输入输出命令 89

5.4.1格式化输入输出语句概述 89

5.4.2数据格式编辑符 92

5.4.3控制格式编辑符 103

5.4.4字符串编辑符 108

5.5有名I/O列表 108

5.5.1 NAMELIST语句 108

5.5.2 NAMELIST语句示例 109

5.5.3 I/O实体 110

5.6程序举例 110

5.7本章小结 112

第6章 选择结构程序设计 113

6.1 IF语句 114

6.1.1单分支IF语句 114

6.1.2双分支IF语句 115

6.1.3多分支IF语句 117

6.1.4逻辑IF语句 119

6.2 SELECT CASE控制语句 120

6.3选择语句的嵌套 122

6.4其他程序流程控制语句 123

6.4.1 GOTO语句 124

6.4.2 PAUSE、 CONTINUE、STOP语句 125

6.5程序举例 126

6.6本章小结 131

第7章 循环结构程序设计 132

7.1循环结构控制程序设计概述 132

7.2带循环变量的DO语句 133

7.2.1 DO语句循环简介 133

7.2.2带循环变量的DO循环结构 133

7.2.3带循环变量的DO循环细节说明 135

7.2.4 DO循环的执行过程 138

7.2.5带循环变量的DO语句程序举例 138

7.3 DO WHILE语句 141

7.3.1 DO WHILE语句基本格式 141

7.3.2 DO WHILE语句的执行过程 141

7.3.3 DO WHILE语句使用举例 142

7.4循环流程控制语句 143

7.4.1 EXIT语句 143

7.4.2 CYCLE语句 145

7.5无循环变量的DO语句 146

7.6使用GOTO语句进行循环设计 147

7.7循环语句的嵌套 148

7.7.1循环嵌套的语法结构 148

7.7.2循环嵌套的执行过程 149

7.7.3循环嵌套的使用说明 150

7.8不同循环语句的区别与联系 153

7.9程序举例 154

7.10本章小结 159

第8章 数组 161

8.1数组概述 161

8.2数组的定义 163

8.2.1用类型说明语句定义数组 163

8.2.2用DIMENSION语句定义数组 164

8.2.3用类型说明语句和DIMENSION语句定义数组 165

8.3数组的引用 165

8.3.1数组整体引用 166

8.3.2单个元素的引用 166

8.3.3片段法引用多个数组元素 167

8.4数组元素的存储结构 169

8.4.1数组元素的存储结构 169

8.4.2数组存储结构的应用 171

8.5数组的赋值 172

8.5.1数组赋值语句 172

8.5.2 DATA语句 173

8.5.3数组构造器 176

8.6数组的输入输出 178

8.6.1一维数组的输入输出 178

8.6.2二维数组的输入输出 180

8.6.3多维数组的输入输出 183

8.7动态数组 183

8.7.1动态数组的定义 184

8.7.2动态数组空间的分配及释放 184

8.7.3动态数组的应用举例 185

8.8数组的运算 187

8.8.1数组的算术运算 188

8.8.2数组的逻辑运算 190

8.9数组的常用内在函数 192

8.9.1矩阵相乘函数 192

8.9.2向量点乘函数 193

8.9.3元素求积函数 193

8.9.4元素求和函数 194

8.9.5数组大小查询函数 194

8.9.6数组形状查询函数 194

8.9.7数组合并函数 195

8.9.8数组压缩函数 195

8.9.9数组转置函数 195

8.9.10数组最大值最小值函数 196

8.9.11数组最大值最小值定位函数 196

8.10数组操作语句 197

8.10.1 WHERE语句 198

8.10.2 FORALL语句 200

8.11数组应用举例 201

8.12本章小结 204

第9章 FORTRAN过程 205

9.1 FORTRAN程序单元概述 205

9.2语句函数 206

9.2.1语句函数的定义及引用 206

9.2.2语句函数使用注意事项 208

9.3函数子程序(FUNCTION) 209

9.3.1函数子程序的定义 209

9.3.2函数子程序的调用 210

9.4子例行子程序(SUBROUTINE) 211

9.4.1子例行子程序的定义 212

9.4.2子例行子程序的调用 212

9.5实参和形参之间的数据传递方式 214

9.5.1变量作为形参 215

9.5.2数组作为形参 217

9.5.3子程序名作为形参 221

9.5.4星号(*)作为形参 224

9.6特殊的参数属性 225

9.6.1 INTENT属性 225

9.6.2接口(INTERFACE) 227

9.6.3可选参数OPTIONAL 229

9.6.4改变参数位置的方法 231

9.7局部变量与SAVE属性 233

9.7.1变量的作用范围 233

9.7.2变量的SAVE属性 234

9.8公用存储单元与数据块程序单元 236

9.8.1公用语句(COMMON) 236

9.8.2数据块子程序(BLOCK DATA) 239

9.9特殊数组及可分配数组做子程序参数 240

9.9.1自动数组(AUTOMATICARRAYS) 241

9.9.2可分配数组做形参 241

9.9.3可分配函数子程序 243

9.9.4自动数组和可分配数组的比较 244

9.10特殊的过程类型 244

9.10.1递归过程(RECURSIVE) 244

9.10.2纯过程(PUREPROCEDURES) 247

9.10.3逐元过程(ELEMENTALPROCEDURES) 248

9.11内部过程 249

9.12过程中的其他功能 251

9.12.1 ENTRY语句 251

9.12.2另一个子程序的返回点 253

9.12.3内在函数做参数 254

9.13本章小结 255

第10章 文件及高级I/O应用 256

10.1文件基本概念 256

10.1.1设备号 257

10.1.2文件分类 257

10.1.3文件的构成——记录 258

10.1.4文件的存取方式 258

10.1.5文件的结构 258

10.1.6文件的定位 259

10.2文件基本操作语句 260

10.2.1 OPEN语句 260

10.2.2 CLOSE语句 264

10.2.3 READ语句 265

10.2.4 WRITE语句 267

10.2.5 INQUIRE语句 267

10.2.6 REWIND语句 269

10.2.7 BACKSPACE语句 270

10.2.8 ENDFILE语句 270

10.2.9 FLUSH语句 270

10.2.10 WAIT语句 270

10.2.11 EOF函数 270

10.3文件的使用 271

10.3.1有格式顺序存取文件 271

10.3.2有格式直接存取文件 275

10.3.3无格式顺序存取文件 277

10.3.4无格式直接存取文件 279

10.3.5二进制顺序存取文件 281

10.3.6二进制直接存取文件 285

10.4流访问模式 286

10.5异步输入输出 286

10.6与操作系统相关的I/O信息 287

10.7本章小结 287

第11章 结构体及指针 288

11.1派生类数据类型概述 288

11.2结构体的定义和引用 290

11.2.1结构体变量和结构体数组的定义 290

11.2.2结构体成员的引用 293

11.3结构体的初始化和使用 294

11.3.1在结构体声明中进行初始化 294

11.3.2使用赋值语句进行初始化 295

11.3.3使用输入语句进行初始化 295

11.3.4使用DATA语句进行初始化 296

11.3.5结构体数据输入与输出 298

11.3.6结构体数组的使用举例 299

11.4指针的概念和指针变量的定义 304

11.4.1指针的概念 304

11.4.2指针变量的定义 305

11.4.3指针变量的引用 305

11.4.4悬空指针和无法访问的内存 310

11.5指针与数组 310

11.5.1指向数组的指针 310

11.5.2指针数组 312

11.6指针与链表 313

11.6.1链表的概念 314

11.6.2建立链表 314

11.6.3插入结点 316

11.6.4删除结点 317

11.7本章小结 318

第12章 FORTRAN模块及面向对象程序设计 320

12.1模块概述 320

12.2模块的组成和使用 322

12.2.1模块的组成 322

12.2.2模块中的变量 322

12.2.3模块的公有属性和私有属性 324

12.2.4模块的使用 326

12.3面向对象的程序设计概述 328

12.3.1对象简述 328

12.3.2面向对象程序设计的特点 329

12.4模块的重载性应用 329

12.4.1子程序重载 330

12.4.2操作符重载 331

12.4.3赋值号重载 333

12.5继承性和多态性 334

12.5.1继承性 334

12.5.2多态性 337

12.6本章小结 337

第13章 FORTRAN数据结构及算法 338

13.1概述 338

13.1.1什么是数据结构 338

13.1.2基本概念和术语 340

13.1.3.逻辑结构和物理结构 341

13.1.4抽象数据类型 343

13.1.5 FORTRAN算法和算法特性 344

13.2排序 347

13.2.1冒泡排序 348

13.2.2选择排序 350

13.2.3插入排序 351

13.2.4希尔排序 353

13.2.5快速排序 354

13.3查找 356

13.3.1查找概述 357

13.3.2顺序表查找 358

13.3.3有序表查找 360

13.4本章小结 366

第14章 矩阵分解及特殊函数 367

14.1矩阵分解 367

14.1.1 Crout分解 367

14.1.2 Doolittle分解 370

14.1.3 Cholesky分解 372

14.2矩阵的特征值与特征向量 374

14.2.1乘幂法计算主特征值及其特征向量 374

14.2.2乘幂法2范数单位化方法 376

14.2.3 Rayleigh加速方法 378

14.2.4修正的Rayleigh加速方法 380

14.2.5 QR分解法 383

14.3 Bessel函数、Beta函数和Gamma函数 385

14.3.1第一类整数阶Bessel函数 385

14.3.2第二类整数阶Bessel函数 391

14.3.3 Gamma函数 397

14.3.4不完全Gamma函数 399

14.3.5 Beta函数与x2分布函数 402

14.4 FORTRAN 2008新增的内部函数 406

14.4.1 Bessel函数 406

14.4.2误差函数 406

14.4.3距离函数 406

14.4.4 Gamma函数 406

14.4.5欧式向量范数 407

14.5本章小结 407

第15章 解方程及方程组 408

15.1解线性方程组 408

15.1.1 Gauss消元法 408

15.1.2选主元消元法 410

15.1.3 LU分解法 413

15.1.4追赶法 415

15.1.5 Jacobi迭代法 418

15.1.6 Gauss-Seidel迭代法 420

15.1.7逐次超松弛迭代法 423

15.1.8最速下降法 425

15.1.9共轭梯度法 428

15.2非线性方程求根 431

15.3非线性方程组的数值解法 433

15.4本章小结 437

第16章 数值分析 438

16.1最小二乘与数据拟合 438

16.1.1 Cholesky分解法计算最小二乘 438

16.1.2 Householder镜像变换之QR分解 442

16.1.3 QR分解法计算最小二乘问题 445

16.1.4最小二乘曲线拟合 448

16.2多项式插值 452

16.2.1多项式插值之Lagrange插值 452

16.2.2多项式插值之Newton插值 454

16.2.3多项式插值之Hermite插值 456

16.2.4多项式插值之反插值 458

16.3数值微分 460

16.3.1中点公式 460

16.3.2 Richardson外推法 463

16.4数值积分 465

16.4.1复化梯形公式 465

16.4.2复化Simpson公式 467

16.4.3 Romberg积分 468

16.5三次样条插值 470

16.5.1三次样条插值之第一边界条件 471

16.5.2三次样条插值之第二边界条件 476

16.5.3三次样条插值之第三边界条件 480

16.6本章小结 486

第17章 常微分方程及方程组 487

17.1四阶Runge-Kutta法 487

17.2 Gill方法 492

17.3 Runge-Kutta法计算微分方程组 494

17.4 Adams-Bashforth三步三阶法 499

17.5 Adams-Bashforth四步四阶法 505

17.6三阶预测校正方法 510

17.7四阶预测校正方法 517

17.8本章小结 523

第18章 Coarray与并行计算 524

18.1什么是并行计算 524

18.1.1并行计算机 524

18.1.2并行编程模式 525

18.1.3并行语言 526

18.2 Coarray的历史 527

18.3 Coarray简介 527

18.4支持SPMD编程风格的Coarray 530

18.4.1程序镜像 530

18.4.2 Coarray数据声明与访问 530

18.4.3固有过程 531

18.5 Coarray FORTRAN简单实例 532

18.5.1一个实例 532

18.5.2设置镜像数目 533

18.6 Coarray FORTRAN高级实例 535

18.6.1基础知识 535

18.6.2镜像的引用 536

18.6.3高级实例——矩阵相乘 539

18.7本章小结 541

附录 FORTRAN内置函数 542

参考文献 548