| 查看: 1667 | 回复: 6 | |||||
| 当前主题已经存档。 | |||||
fan0221木虫 (正式写手)
|
[交流]
【求助】问个 ATK 数据输出的问题
|
||||
|
好像ATK 的数据输出都是以.VNL的形式,就算后面跟了.dat也不能显示全部数据 例如 输运谱输出只能在Virtual NanoLab里面看到输运图谱 样子不好看不说具体的数值不能提取出来 这样为再次绘图带来很大的不便啊 在老版本的transietac中 数据是以.out文件输出的 很容易提取。 不知道在ATK中各位虫子是怎么处理这个问题的?难道还有什么别的命令控制最后的输出吗?如果是这样,哪个明白的放出来,贡献一下咯 |
» 收录本帖的淘帖专辑推荐
好资源下载 | ATK软件 |
» 猜你喜欢
博士读完未来一定会好吗
已经有27人回复
投稿精细化工
已经有4人回复
高职单位投计算机相关的北核或SCI四区期刊推荐,求支招!
已经有4人回复
导师想让我从独立一作变成了共一第一
已经有9人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有11人回复
读博
已经有4人回复
JMPT 期刊投稿流程
已经有4人回复
心脉受损
已经有5人回复
Springer期刊投稿求助
已经有4人回复
小论文投稿
已经有3人回复

zdhlover
荣誉版主 (职业作家)
小木虫之莲花佛
- 应助: 0 (幼儿园)
- 贵宾: 6.748
- 金币: 19449.4
- 散金: 429
- 红花: 7
- 帖子: 3105
- 在线: 119.6小时
- 虫号: 409529
- 注册: 2007-06-22
- 性别: GG
- 专业: 凝聚态物性 II :电子结构
- 管辖: 计算模拟区务
2楼2008-12-26 19:56:49
3楼2008-12-26 19:58:00
fan0221
木虫 (正式写手)
- 应助: 3 (幼儿园)
- 金币: 2782.3
- 散金: 3677
- 红花: 11
- 帖子: 978
- 在线: 183.6小时
- 虫号: 273320
- 注册: 2006-08-19
- 性别: GG
- 专业: 凝聚态物性 II :电子结构
★ ★
zdhlover(金币+2,VIP+0):欢迎交流
zdhlover(金币+2,VIP+0):欢迎交流
|
我就是想问如何编译这个控制结果的语句 比如 from ATK.TwoProbe import * # Restore initial density from old calculation zero_bias = restoreSelfConsistentCalculation("lih2li-scf.nc" ![]() # Create a list of energies from -2 to 5 eV, with 0.1 eV spacing import numpy energy_list = numpy.arange(-2.0, 5.0, 0.1)*electronVolt # Set k-points for transmission bz_int_param = brillouinZoneIntegrationParameters( (1,1) ) # Calculate transmission spectrum trans_spectrum = calculateTransmissionSpectrum( self_consistent_calculation = zero_bias, energies = energy_list, brillouin_zone_integration_parameters = bz_int_param ) vnlfile = VNLFile("lih2li_trans.vnl" ![]() vnlfile.addToSample(trans_spectrum,'lih2li') # Define conductance quantum conductance_quantum = 7.748091733e-5*Siemens # Calculate transmission spectrum at E_Fermi fermi_trans = calculateTransmissionSpectrum( self_consistent_calculation = zero_bias, energies = [0.0]*electronVolt ) conductance = fermi_trans.coefficients()[0] * conductance_quantum print 'Zero bias conductance: %.2e Siemens' % (conductance.inUnitsOf(Siemens)) 即使 我在计算的时候是 atk trans.py > trans.dat 最后也只是在dat文件中给出了 Zero bias conductance: 4.08e-005 Siemens 那么如何写个控制语句 把输运系数也输出呢 麻烦明白的达人以这个为例子帮我写个控制语句 谢谢 [ Last edited by fan0221 on 2008-12-26 at 21:16 ] |

4楼2008-12-26 20:25:56
★ ★ ★
zdhlover(金币+3,VIP+0):多谢,欢迎常来交流
zdhlover(金币+3,VIP+0):多谢,欢迎常来交流
|
给以个说明书自带程序里的py脚本给你作参考 # Print at screen the Transmission Spectrum print 'Transmission Spectrum' print '-----------------------------------------------------------------------' print 'Energies(eV) Coefficients' for i in range(len(spectrum.energies())): print '%17.3f %17.6f' %( spectrum.energies().inUnitsOf(Units.eV), spectrum.coefficients()) 在你的脚本里写好这些输出的语句后,用楼上说的 ATK filename.py > filename.dat 就可以把输出的东西保存起来了 |
5楼2008-12-26 21:01:02
fan0221
木虫 (正式写手)
- 应助: 3 (幼儿园)
- 金币: 2782.3
- 散金: 3677
- 红花: 11
- 帖子: 978
- 在线: 183.6小时
- 虫号: 273320
- 注册: 2006-08-19
- 性别: GG
- 专业: 凝聚态物性 II :电子结构

6楼2008-12-26 21:17:53
fan0221
木虫 (正式写手)
- 应助: 3 (幼儿园)
- 金币: 2782.3
- 散金: 3677
- 红花: 11
- 帖子: 978
- 在线: 183.6小时
- 虫号: 273320
- 注册: 2006-08-19
- 性别: GG
- 专业: 凝聚态物性 II :电子结构
★ ★ ★ ★
zdhlover(金币+4,VIP+0):多谢回馈信息,欢迎常来讨论
zdhlover(金币+4,VIP+0):多谢回馈信息,欢迎常来讨论
|
非常感谢 TIGERYZZ 我找到你的说的例子了 呵呵 只要把scf = restoreSelfConsistentCalculation('three-ben-B-bias-2.4.nc')中的.nc文件替换成自己的然后 写上**.out 或者**.dat就可了 顺便把例子放出来 方便虫子们使用 from ATK.TwoProbe import * # Restoring the SCF from the previous calculation scf = restoreSelfConsistentCalculation('three-ben-B-bias-2.4.nc') # Specify the range of energies energy_scan = [ i/50.0*Units.eV for i in range(-201,201)] # Calculate the transmission spectrum bz_int_parm = brillouinZoneIntegrationParameters( (1,1) ) spectrum = calculateTransmissionSpectrum( self_consistent_calculation=scf, energies = energy_scan, brillouin_zone_integration_parameters=bz_int_parm) # Save the transmission spectrum to VNL file vnlfile = VNLFile("trans.vnl" ![]() vnlfile.addToSample(spectrum,'trans') # Print at screen the Transmission Spectrum print 'Transmission Spectrum' print '-----------------------------------------------------------------------' print 'Energies(eV) Coefficients' for i in range(len(spectrum.energies())): print '%17.3f %17.6f' %( spectrum.energies().inUnitsOf(Units.eV), spectrum.coefficients()) |

7楼2008-12-29 14:57:33












回复此楼
