| 查看: 516 | 回复: 0 | |||
| 当前主题已经存档。 | |||
xirainbow木虫 (正式写手)
|
[交流]
【分享】How to get G-vectors and eigenvectors
|
||
|
原帖网址:http://blog.sina.com.cn/s/blog_5f15ead20100gfrd.html I am very interested in get the detailed information of basic vectors and their coefficients (that is wavefunction). The reason is very simple: basic vector and their coefficients are directly related with KS equation. Unfortunately, these dates are all stored in binary files. Although I can plot electronic density in Xcrysden, I can not get the wavefunction. Today, I notice a discussion in PWscf Forum, which is concerned with how to convert binary date to readable format. Although I still do not know the transformation detail,I know I can do it ![]() The following is quoted from PWscf Forum. in general you can convert all the .dat files from the $prefix.save directory (or subdirectories) into xml using the iotk conversion tool (which is linked in ~espresso/bin ) 1: ~espresso/bin/iotk convert file.dat file.xml I think this utility is particularly useful to understand which and how are the data stored in the QE save directory. Then, you can parse the xml file if you like. My personal suggestion would be to do that only if you need this piece of information for a very simple postprocessing code, because parsing xml from fortran, even if not impossible, is not simple... Instead, I think the easiest way to go is to use the qexml library (distributed with QE in ~espresso/PP/qexml.f90) which is exactly meant to provide tools to read (and in principles also write) QE datafiles... The library must be initialized specifying the output directory, prefix, and few other informations, and then it directly provides routines to read all the piece of data you need. Some examples about how to use it are given in the WanT code(www.wannier-transport.org); just grep qexml_ in the sources. 2:In terms of the usage of the library, you can have a look at a simple example at http://web.mit.edu/~ferretti/www/Test_QEXML.tgz instructions to compile, run and check the test are given inside the tarball. There is a proble in the Makefile, change the lines $(espresso_home)/PP/qexml.o: cd $(espresso_home)/PP make qexml.o into $(espresso_home)/PP/qexml.o: cd $(espresso_home)/PP; make qexml.o Then the code of Test_QEXML work well. But it only give a brief information about G-vector and eigenvector. Therefore, the full information can only be obtained by espresso/bin/iotk convert file.dat file.xml |
» 猜你喜欢
求教各位大神:2026教育部人文社科青年基金项目何时公示呀?
已经有6人回复
浙江师范大学是怎么坑我的
已经有6人回复
面上有专家说实验设备不是我们单位的
已经有8人回复
科研求助
已经有4人回复
博士去二本高校当辅导员,如何调整心态?
已经有11人回复
江苏省自然基金 什么时候出结果
已经有6人回复
闲聊
已经有3人回复










回复此楼