24小时热门版块排行榜    

CyRhmU.jpeg
查看: 794  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zhangguangping

木虫 (著名写手)

[交流] 【求助】atk中输出的数据的精度问题【完结】已有3人参与

为什么atk输出的数据有的只有两位小数啊。尤其是在输出能谱的时候,都分辨不开。
  -2.00        0.0000
  -2.00        0.0000
  -2.00        0.0000
  -2.00        0.0000
  -2.00        0.0000
  -2.00        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.99        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.98        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.97        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.96        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.95        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.94        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
  -1.93        0.0000
类似于这种格式。难道atk里面取值间隔要大于0.01?并且输出来的体系的坐标也只有两位小数。
我用的输出格式是:
if processIsMaster(): nlPrint(trans_spectrum),
现在请教怎么提高输出的精度。
谢谢!

[ Last edited by zhangguangping on 2010-9-29 at 10:29 ]
回复此楼
弘德明志博学笃行
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangguangping

木虫 (著名写手)

★ ★ ★
aylayl08(金币+3):谢谢进一步解释 2010-09-29 19:07:47
引用回帖:
Originally posted by youngjfly at 2010-09-29 08:29:07:
可能是因为他的脚本是python语言的缘故,只要在后面多家点0,系统就会自动提供那个精度吧。看了你的很多贴,很崇拜,请多赐教噢。

将if processIsMaster(): nlPrint(transmission_spectrum)
替换成

可以提高小数的位数,这个也是别人给我说的,这个是python语言的格式输出的问题,需要学习一下才行。 nlPrint()这个函数不是很好用。

[ Last edited by zhangguangping on 2010-10-5 at 08:51 ]
弘德明志博学笃行
5楼2010-09-29 17:27:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

panjinbo87

木虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+1):谢谢讨论 2010-09-29 15:42:21
我也不知道能不能帮到你,我给你看下我的out文件吧。
import numpy
transmission_spectrum = calculateTransmissionSpectrum(
    self_consistent_calculation = scf,
    energies = numpy.arange(-2.0, 2.0+0.0040404040404, 0.040404040404)*electronVolt,
    brillouin_zone_integration_parameters = brillouinZoneIntegrationParameters((3, 3)),
    green_function_infinitesimal = 1.0e-5*electronVolt
)
if processIsMaster(): nlPrint(transmission_spectrum)
2楼2010-08-04 13:34:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

youngjfly

银虫 (初入文坛)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+1):谢谢讨论 2010-09-29 15:42:04
可能是因为他的脚本是python语言的缘故,只要在后面多家点0,系统就会自动提供那个精度吧。看了你的很多贴,很崇拜,请多赐教噢。
真的很想把你搞好。
3楼2010-09-29 15:29:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangguangping

木虫 (著名写手)

引用回帖:
Originally posted by panjinbo87 at 2010-08-04 06:34:48:
我也不知道能不能帮到你,我给你看下我的out文件吧。
import numpy
transmission_spectrum = calculateTransmissionSpectrum(
    self_consistent_calculation = scf,
    energies = numpy.arange(-2.0, 2. ...

将if processIsMaster(): nlPrint(transmission_spectrum)
替换成

可以提高小数的位数,这个也是别人给我说的,这个是python语言的格式输出的问题,需要学习一下才行。 nlPrint()这个函数不是很好用。

[ Last edited by zhangguangping on 2010-10-5 at 08:50 ]
弘德明志博学笃行
4楼2010-09-29 17:26:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见