| 查看: 1052 | 回复: 5 | ||||
alvin510银虫 (小有名气)
|
[求助]
求txt中数据重新排序的fortran代码
|
| 我用MS计算了一个晶体的能带结构,其结果保存在了unitbands.txt文件中。不幸的是,其中的结果没有按自然顺序排列,即原文件是按k-point =1,k-point=7,k-point=13,k-point=19,k-point=25,kpoint=31,k-point=2,k-point=8,k-point=14.....这种顺序排列的。现在,我想要它按k-point=1,k-point=2,k-point=3,k-point=4......这种顺序排列在txt中。求帮我写一段这样的fortran代码,万分感谢。为方便操作,我把原件上传了上来。 |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : unit_bands.txt
2013-07-25 17:42:52, 38.96 K
» 猜你喜欢
垃圾破二本职称评审标准
已经有18人回复
职称评审没过,求安慰
已经有53人回复
毕业后当辅导员了,天天各种学生超烦
已经有5人回复
26申博自荐
已经有3人回复
A期刊撤稿
已经有4人回复
投稿Elsevier的Neoplasia杂志,到最后选publishing options时页面空白,不能完成投稿
已经有22人回复
EST投稿状态问题
已经有7人回复
» 本主题相关价值贴推荐,对您同样有帮助:
求助:intel visual fortran的格式问题
已经有14人回复
fortran,带字符的数据读取与存储!
已经有11人回复
fortran中计算数据写入文本为 NAN的问题
已经有4人回复
fortran中如何处理字符和数据混合的文件
已经有6人回复
Fortran数据读入格式的修改
已经有5人回复
Fortran如何读取数据避开空行?
已经有7人回复
求助fortran编程时怎么使用数据库
已经有4人回复
【求助】matlab数据导入Fortran
已经有9人回复
【求助】如何写FORTRAN程序实现求平均最近邻距离
已经有34人回复
【求助】FORTRAN写文件时每行开头都多了一个空格?
已经有6人回复
【求助】FORTRAN读取文本文件
已经有9人回复
【求助】求高手关于Fortran数据读写的问题。【已完结】
已经有12人回复
【求助】初学fortran,
已经有15人回复
请教fortran导txt数据进origin问题
已经有1人回复
【求助】求指点,在Fortran里面,怎样实现“数组维度可调”的数组?
已经有5人回复
【求助】请问一下fortran的可视化编程
已经有7人回复
【求助】fortran中怎么存储不确定长度的数据【已完结】
已经有6人回复
【求助】matlab读取fortran输出的txt文件【已解决】
已经有3人回复
【求助】有关fortran进行数值模拟
已经有10人回复
jerkwin
专家顾问 (正式写手)
-

专家经验: +14 - 应助: 454 (硕士)
- 金币: 20699.1
- 散金: 148
- 红花: 81
- 帖子: 813
- 在线: 2648.3小时
- 虫号: 1023452
- 注册: 2010-05-19
- 专业: 理论和计算化学
- 管辖: 分子模拟
2楼2013-07-25 20:45:07
alvin510
银虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 1784.3
- 散金: 423
- 红花: 4
- 帖子: 288
- 在线: 225.4小时
- 虫号: 1245360
- 注册: 2011-03-26
- 专业: 人工晶体
3楼2013-07-26 17:26:52
alvin510
银虫 (小有名气)
- 应助: 1 (幼儿园)
- 金币: 1784.3
- 散金: 423
- 红花: 4
- 帖子: 288
- 在线: 225.4小时
- 虫号: 1245360
- 注册: 2011-03-26
- 专业: 人工晶体
|
我把数据读入数组时,用的代码是 do nk = 1, nkpts read(fileid,"(A80)" dummylocat_str = index(dummy,'K-point') read(dummy(locat_str+7 ,*) ndum, kpoints(1,nk), kpoints(2,nk), kpoints(3,nk), weight(nk)do ns = 1, nspins read(fileid,*) dummy do nb = 1, num_bands read(fileid,"(3XF11.8)" eigenvalues(nb, nk, ns)end do enddo enddo close(fileid) 其中,nk就代表了k-point序列. 当nk=1时能和txt中的k-pont 1对应。但当nk=2时,读入的是k-point 7的数据,而存进数组的序列为nk=2.后面的也跟着对应不了。求帮助我解决这个难题。万分感谢。 |
4楼2013-07-26 17:37:39
jerkwin
专家顾问 (正式写手)
-

专家经验: +14 - 应助: 454 (硕士)
- 金币: 20699.1
- 散金: 148
- 红花: 81
- 帖子: 813
- 在线: 2648.3小时
- 虫号: 1023452
- 注册: 2010-05-19
- 专业: 理论和计算化学
- 管辖: 分子模拟
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
alvin510: 金币+10, ★★★★★最佳答案 2013-07-27 09:22:48
alvin510: 金币+10, ★★★★★最佳答案 2013-07-27 09:22:48
|
这里 read(dummy(locat_str+7,*) ndum, kpoints(1,nk), kpoints(2,nk), kpoints(3,nk), weight(nk) 应该改成 read(dummy(locat_str+7,*) ndum, kpoints(1,ndum), kpoints(2,ndum), kpoints(3,ndum), weight(ndum) 其他类似的地方也要改 有时间弄这些,花两天时间学学bash脚本,早就弄好了。 |
5楼2013-07-26 21:16:23
6楼2013-07-28 08:54:57













回复此楼
dummy
,*) ndum, kpoints(1,nk), kpoints(2,nk), kpoints(3,nk), weight(nk)