pio*_*kuc 2 formatting fortran fortran95
我有一个Fortran程序,我需要修改,所以我正在读它并试图理解.你可以解释一下以下语句中的格式化字符串是什么意思:
write(*,'(1p,(5x,3(1x,g20.10)))') x(jr,1:ncols)
Run Code Online (Sandbox Code Playgroud)
http://www.fortran.com/F77_std/rjcnf0001-sh-13.html
简而言之,您每行写三个通用(g)格式浮点数.每个浮点数的总字段宽度为20个字符,小数点右侧有10个位置.大幅度数字呈指数形式.
所述1xs的简单相加的空间(这可能也已通过增加场宽度即完成,g21.10因为数字是右对齐.将5x在每一行的开头提出额外的5位.
这里有点棘手的事情是导致1p这是一个比例因素.它使得由以下g格式产生的所有指数形式数的尾数乘以10,并且指数相应地改变,即代替默认值,
g17.10 -> b0.1234567890E+12
Run Code Online (Sandbox Code Playgroud)
你得到:
1p,g17.10 -> b1.2345678900E+11
Run Code Online (Sandbox Code Playgroud)
b表示输出中的空白.一定要留出空间用于-场地宽度计数......
为了在比例大于1的情况下完整性,小数位数减少(保持总精度),即,
3p,g17.10 -> b123.45678900E+09 ! note only 8 digits after the decimal
Run Code Online (Sandbox Code Playgroud)
这比1p你在默认情况下的精度要高,但你不再得到它.负标度会使您精确,保留10位数:
-7p,g17.10 -> b0.0000000123E+19
Run Code Online (Sandbox Code Playgroud)
我应该补充一点,p比例因子编辑描述符在输入上做了完全不同的事情.阅读文档......
| 归档时间: |
|
| 查看次数: |
285 次 |
| 最近记录: |