- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FORTRAN编程经验
FORTRAN编程经验 Ping He 2006.04.03 程序设计规范 --1 教材之外的。 程序的易读性非常关键! 书写格式:关键字要这样 -- Real, 不要 REAL, real。 类似,应该End If,End Do, Write, Do, … 充分的注释和说明,其中公式和引用要给出文献出处。 注释和说明部分大约和有效代码一样长(或更长)。我的程序的注释不够长。 程序设计规范 --2 约定:模块(Module)的名字以Pack为后缀。如: Module FunPack。 子程序:(1)内部子程序,(2)模块子程序,(3)外部子程序。 外部子程序:需要明确的(explicit) Interface,暂时不要使用外部子程序。 结构:一个主程序,若干Module,结构化编程思想的实现。 调试 即使有两三个语句构成的功能块,也要独立编程做实验。试验它的功能,性能。试验清楚后再移植到你的程序中去。 诊断,加pause等(与Write连用)。 Write(*,(A,$)) Continue(?)=: Read(*,*) Igo Call Cpu_time(tt) 读程序 黑箱式:对于一个程序单位。只关心输入,输出。如果不必要,不必研究该程序单位的内部结构 -- 便宜行事。 对每个程序单位独立试验。如用已知解析结果的函数做试验,等等。 大型程序:逻辑结构,相互调用关系要画出图来。 做试验 --1 如一个积分,Int(f, a, b, out),不管是你自己编的,还是别人给你的。你要找有解析结果的函数去试验。如,f(x)=x**2, a=0, b=1, 看一看结果是不是0 一个错误要用十倍的代价去弥补。 逻辑结构图 与FORTRAN-77的比较-1 怎样将FORTRAN-77程序调整成90格式。 与FORTRAN-77的比较 –2 -- common语句 与FORTRAN-77的比较-3-- equivalence语句 一点经验 --1 画出函数曲线,如积分的被积函数。这样才能安排算法,这样才能知道对错。 一点经验 --2 Do循环: (1) 初始(n=1),(2)中间,(3)末尾 x=x+a的意义(赋值) 警觉(Alert)与保护(Protective)-1--小分母 警觉(Alert)与保护(Protective) --3--五花八门的保护 Numerical Recipes 算法集锦 非常好,但是很廉价。 我的自行车几百元人民币,布什的自行车5万美元。 好程序一般都很长。 好地方: 要求 希望大家今后能多总结经验,教训。 积累编程技术。 读别人程序时特别要研究人家的技术。好的要学会,不好的要能指出来。 * * * 飞船上天之前要进行相当多的试验 主程序 子程序-1 子程序-2 子程序-3 子程序-4 子程序-5 子程序-3 子程序-3 子程序-6 主程序 子程序 p com1 x Log(x) n=0 1 … i-1 i … N-1 N x 数值上得不到 警觉(Alert)与保护(Protective) --2--大吃小 数值上 因此 所以 排序 只有充分警觉才能做到有效保护 *
文档评论(0)