| ²é¿´: 2418 | »Ø¸´: 9 | |||||
yjcmwgk½û³æ (ÎÄ̳¾«Ó¢)
Ãܶȷºº¯¡¤Ð¡×ä
|
[ÇóÖú]
ÓÃPython¶ÁGaussianµÄcubeÎļþ£¬ËٶȺÜÂý£¬ÔõÃ´ÆÆ£¿Ð»Ð»£¡£¡£¡ ÒÑÓÐ4È˲ÎÓë
|
|
Ïò¸÷λpython´óÏÀÇó½ÌÒ»¸öÎÊÌ⣬лл¸÷λ£¡ ÎÒÕýÔÚÓÃpython¶ÁÒ»¸öÓÉGaussianÉú³ÉµÄcubeÎļþ¡£µ«ÊǶÁÎļþ¶ÁµÃ·Ç³£Âý£¬¶ÁÒ»¸ö6M¶àµÄcubeÎļþ£¬¾ÓÈ»ÓÃÁË3·ÖÖÓ£¡ ¾ßÌåÎÊÌâÈçÏ£º ÓÃcubefileÀ´´ò¿ªÄ³¸öcubeÎļþ¡£È»ºó¼ÌÐø ÎÒ»³ÒÉtmpline = tmplines[i-1]Õâ¾ä»°ÍÏÀÛµÄËÙ¶È£¿Ó¦¸ÃÈçºÎÐ޸ģ¿·Ç³£¸Ðл¸ßÊÖ°ïÖú£¡£¡ ¸Ðл£¡£¡ |
» ÊÕ¼±¾ÌûµÄÌÔÌûר¼ÍƼö
SOB ¼¯½õ | ¾Ñé | ÔÓÊé |
» ²ÂÄãϲ»¶
ÖÐÄÏ´óѧ»¯Ñ§»¯¹¤Ñ§ÔºÕÐÊÕµç³Ø´¢ÄÜ¡¢ÀíÂÛ¼ÆËã·½Ïò²©Ê¿Éú
ÒѾÓÐ16È˻ظ´
ÇëÎÊÄÄÀï¿ÉÒÔ´úÉÕ´øÑ¹Á¦µÄ¯×Ó£¿
ÒѾÓÐ6È˻ظ´
ÎïÀí»¯Ñ§ÂÛÎÄÈóÉ«/·ÒëÔõôÊÕ·Ñ?
ÒѾÓÐ230È˻ظ´
¹ØÓںϳÉMIL-125µÄÇóÖú
ÒѾÓÐ0È˻ظ´
Ë«·Ç±¾Ë¶¹â´ß»¯·½ÏòÏë¶Á²©£¬Çë¸÷λÀÏʦ¿´¿´ÎÒ£¡
ÒѾÓÐ2È˻ظ´
ÈðµäÁÖѩƽ´óѧ·¶Á¢ÖÞ¿ÎÌâ×éÏÖÕÐÆ¸²©Ê¿ºó¡¢¸ÚÎ»ÖÆ²©Ê¿Éú
ÒѾÓÐ0È˻ظ´
Öйú¿Æ´ó·ÂÉú½çÃæ²ÄÁÏ¿ÆÑ§È«¹úÖØµãʵÑéÊÒ´÷ܲÌÎÑо¿Ô±/½À×ԺʿÍŶÓÕÐÆ¸¿ÆÑÐÖúÀí
ÒѾÓÐ0È˻ظ´
Öйú¿Æ´ó·ÂÉú½çÃæ²ÄÁÏ¿ÆÑ§È«¹úÖØµãʵÑéÊÒ´÷ܲÌÎÑо¿Ô±/½À×ԺʿÍŶÓÕÐÆ¸¿ÆÑÐÖúÀí
ÒѾÓÐ0È˻ظ´
ѰÇóÎïÀí»¯Ñ§Ñ§±¨×îеÄͶ¸åÄ£°å£¡
ÒѾÓÐ4È˻ظ´
Ͷ¸å×Éѯ
ÒѾÓÐ7È˻ظ´
×Ô¿ÆÃæÉÏ É¢½ð±Ò Æí¸£
ÒѾÓÐ61È˻ظ´
» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:
AIMÈçºÎʹÓÃ(¼±£¡£¡£¡£©
ÒѾÓÐ18È˻ظ´
ûÓÐGaussian°æÈ¨ÓÃʲô¿´cubeÎļþÀïµÄ¹ìµÀ
ÒѾÓÐ6È˻ظ´
ʹÓÃAdNDP·½·¨ÒÔ¼°ELF/LOL¡¢¶àÖÐÐļü¼¶Ñо¿¶àÖÐÐļü
ÒѾÓÐ14È˻ظ´
ÓÃMultiwfn¡¢Gaussview¡¢Molekel¡¢VMD¹Û¿´ÁúϺ¡¢Åè¾°¡¢¹ÇÅè¡¢´óÄÔ
ÒѾÓÐ16È˻ظ´
¡¾ÇóÖú¡¿ÓÃgaussian¼ÆËãµÃµ½outÎļþºÍchkÎļþ£¬ÔõôµÃµ½fchÎļþ£¿
ÒѾÓÐ4È˻ظ´
¡¾neweroica¸öÈËÎ¿×ª»»VASPµÄCHGCARΪcubeÎļþµÄ³ÌÐòchgcar2cube£¨v0.0£©
ÒѾÓÐ45È˻ظ´
yjcmwgk
½û³æ (ÎÄ̳¾«Ó¢)
Ãܶȷºº¯¡¤Ð¡×ä
- QCÇ¿Ìû: 38
- Ó¦Öú: 165 (¸ßÖÐÉú)
- ¹ó±ö: 16.999
- ½ð±Ò: 555.4
- É¢½ð: 39880
- ºì»¨: 395
- ɳ·¢: 2
- Ìû×Ó: 10406
- ÔÚÏß: 1528.1Сʱ
- ³æºÅ: 448368
- ×¢²á: 2007-11-01
- רҵ: ÀíÂۺͼÆË㻯ѧ
- ¹ÜϽ: ¿ÆÑй¤¾ß×ÊÔ´
2Â¥2014-10-04 11:08:58
frk2008
ľ³æ (ÕýʽдÊÖ)
- Ó¦Öú: 7 (Ó×¶ùÔ°)
- ½ð±Ò: 3434.4
- ºì»¨: 1
- Ìû×Ó: 489
- ÔÚÏß: 440.9Сʱ
- ³æºÅ: 841330
- ×¢²á: 2009-09-05
- רҵ: µç»¯Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+20, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:10
gmy1990: ½ð±Ò+3 2014-10-05 18:49:03
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+20, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:10
gmy1990: ½ð±Ò+3 2014-10-05 18:49:03
|
ÊÔÊÔÕâ¸ö£¬¿´¿´Ð§¹ûÈçºÎ£º [ code] tmplines = cubefile.readlines() tempstr = "".join(tmplines) #°Ñlistת»¯Îªstr£¬ÐÎʽӦ¸ÃÊÇ'num num ...num\nnum ...' tempstr = tempstr.replace('\n',' ') #°ÑstrÖеÄ'\n'Ìæ»»Îª' ' tmpcubedata = tempstr.split(' ') #°ÑstrתΪlist n=0 numcount=len(tmpcubedata) #listµÄÊý¾Ý×ÜÊý for i in tmpcubedata: n+=1 if i%60000==0: print "Converting", cubefilename, "...... ", int(100.0*float(i)/float(numcount)), "%" #if i=="": #tmpcubedata.remove(i) #Èç¹ûcubefile ÎļþÖÐÖмäÓпÕÐУ¬ÔòÐèÒªÕâ¸ö¹¦ÄÜ if tmpcubedata[-1]=="": del tmpcubedata[-1] #Èç¹ûcubefile ÎļþÒÔ¡®num\n¡®½áβ print "Converting", cubefilename, "...... ", "100 %" [ /code] |
3Â¥2014-10-04 15:23:36
rh1127
¾èÖú¹ó±ö (ÖøÃûдÊÖ)
Ò»Ãû¹¤³Ìʦ@ÉϺ£
- Ó¦Öú: 2 (Ó×¶ùÔ°)
- ½ð±Ò: 21407.7
- ºì»¨: 6
- Ìû×Ó: 1616
- ÔÚÏß: 139.5Сʱ
- ³æºÅ: 116848
- ×¢²á: 2005-11-25
- ÐÔ±ð: GG
- רҵ: ½ºÌåÓë½çÃæ»¯Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+20, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:21
gmy1990: ½ð±Ò+2 2014-10-05 18:49:14
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+20, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:21
gmy1990: ½ð±Ò+2 2014-10-05 18:49:14
|
ÓÃnumpyºÍpandasÄ£¿é¶ùÀ´´¦Àí´óÐÍÊý×飬±ÈÖ»ÓÃforÑ»·Ëٶȿ켸ʮ±¶²»Ö¹¡£python×Ô´øµÄÑ»·Î´¾ÓÅ»¯£¬ºÜ¼É»äÀ´´¦Àí´óÐÍÊý×飡 Ï£Íû¶ÔÄãÓаïÖú¡£ |

4Â¥2014-10-05 09:21:10
magicmonk
ÖÁ×ðľ³æ (ÖøÃûдÊÖ)
- Ó¦Öú: 172 (¸ßÖÐÉú)
- ½ð±Ò: 11451.3
- ºì»¨: 24
- Ìû×Ó: 1124
- ÔÚÏß: 3108.8Сʱ
- ³æºÅ: 1191315
- ×¢²á: 2011-01-17
- רҵ: ÀíÂۺͼÆË㻯ѧ

5Â¥2014-10-05 09:50:45
rh1127
¾èÖú¹ó±ö (ÖøÃûдÊÖ)
Ò»Ãû¹¤³Ìʦ@ÉϺ£
- Ó¦Öú: 2 (Ó×¶ùÔ°)
- ½ð±Ò: 21407.7
- ºì»¨: 6
- Ìû×Ó: 1616
- ÔÚÏß: 139.5Сʱ
- ³æºÅ: 116848
- ×¢²á: 2005-11-25
- ÐÔ±ð: GG
- רҵ: ½ºÌåÓë½çÃæ»¯Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
|
Â¥Ö÷£¬ÎÒÇ××Ô¸øÄãcodeµÄ±ê×¼´ð°¸£º ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª import numpy as np import string def readCube2Array(cubeFile): f=open(cubeFile,'r') lines=f.readlines() i=-1 for l in lines: i=i+1 if string.find(l,'E-')>0: break print i #ÕÒµ½µÚÒ»ÐÐÄãÐèÒª´æµÄÊý¾Ý s=(''.join(lines[i:])).replace(" "," " #½«ËùÓÐË«¿Õ¸ñ»»³ÉÒ»¸ö¿Õ¸ñs=s.replace("\n"," " #°ÑËùÓл»Ðзû»»³Éµ¥¸ö¿Õ¸ñdataArray=np.fromstring(s,dtype=double, sep=' ') #µ÷ÓÃnumpy°Ñ×Ö·û´®×ª³ÉdoubleÀàÐ͵ÄÊý×é return dataArray #·µ»ØÄãÒªµÄÊý×é filename='test677-ref.cube' #ÕâÊÇÎҵIJâÊÔÎļþ£¬ÊÇÒ»¸ö¸ß˹09×Ô´øµÄcubeÎļþ£¬ÓоÅÍò¶àÐÐÊý¾Ý dArray=readCube2Array(filename) #Õâ¾ÍÊÇÄãÏëÒªµÄ½á¹û£¬¸ù±¾²»Óÿ´½ø¶È£¬Ë²¼äÍê³É ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ªÕâ¸ö³ÌÐòµÄÖ´ÐÐʱ¼äÎÒÒ²¿´ÁË¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª %timeit dArray=readCube2Array(filename) 30 30 30 30 1 loops, best of 3: 380 ms per loop ´ó¸ÅÊÇ380ms¾ÍÄÜÖ´ÐÐÍêÒ»¸öcubeÎļþµÄµ¼³ö£¬ÎÒ¾õµÃ¾ø¶Ô±ÈÄãµÄ³ÌÐò¿é²»Ö¹¼¸Ê®±¶¡£ ¸Ï½ô¸ø·ÖÁË£¬ÓÐÎÊÌâ¸øÎÒÁôÑÔ£¡ |

6Â¥2014-10-05 14:43:33
rh1127
¾èÖú¹ó±ö (ÖøÃûдÊÖ)
Ò»Ãû¹¤³Ìʦ@ÉϺ£
- Ó¦Öú: 2 (Ó×¶ùÔ°)
- ½ð±Ò: 21407.7
- ºì»¨: 6
- Ìû×Ó: 1616
- ÔÚÏß: 139.5Сʱ
- ³æºÅ: 116848
- ×¢²á: 2005-11-25
- ÐÔ±ð: GG
- רҵ: ½ºÌåÓë½çÃæ»¯Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
|
import numpy as np import string def readCube2Array(cubeFile): f=open(cubeFile,'r') lines=f.readlines() i=-1 for l in lines: i=i+1 if string.find(l,'E-')>0: break print i s=(''.join(lines[i:])).replace(" "," " ) s=s.replace("\n"," " ) dataArray=np.fromstring(s,dtype=double, sep=' ') return dataArray filename='test677-ref.cube' dArray=readCube2Array(filename) |

7Â¥2014-10-05 14:47:08
rh1127
¾èÖú¹ó±ö (ÖøÃûдÊÖ)
Ò»Ãû¹¤³Ìʦ@ÉϺ£
- Ó¦Öú: 2 (Ó×¶ùÔ°)
- ½ð±Ò: 21407.7
- ºì»¨: 6
- Ìû×Ó: 1616
- ÔÚÏß: 139.5Сʱ
- ³æºÅ: 116848
- ×¢²á: 2005-11-25
- ÐÔ±ð: GG
- רҵ: ½ºÌåÓë½çÃæ»¯Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
yjcmwgk: ½ð±Ò+50, ¡ï¡ï¡ï¡ï¡ï×î¼Ñ´ð°¸, ·Ç³£¸Ðл£¬ÎÒºóÀ´×Ô¼ºÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:46
yjcmwgk: ½ð±Ò+50, ¡ï¡ï¡ï¡ï¡ï×î¼Ñ´ð°¸, ·Ç³£¸Ðл£¬ÎÒºóÀ´×Ô¼ºÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:46
| µÚÒ»¸öÂÛ̳×Ô¶¯×ª³É±íÇéÁË£¬ÄãÓõڶþ¸ö°É£¬¶¼ÄÜÔËÐС£¸Ï½ô¸ø·ÖŶ£º£© |

8Â¥2014-10-05 14:47:46
Á½Á£Ò»Æð³Ô
½ð³æ (³õÈëÎÄ̳)
- Ó¦Öú: 4 (Ó×¶ùÔ°)
- ½ð±Ò: 788.9
- É¢½ð: 1042
- ºì»¨: 2
- Ìû×Ó: 28
- ÔÚÏß: 85.5Сʱ
- ³æºÅ: 2227721
- ×¢²á: 2013-01-07
- ÐÔ±ð: GG
- רҵ: ¼ÆËã»úÍøÂç
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï ¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+10, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:53
gmy1990: ½ð±Ò+3 2014-10-05 18:50:03
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
yjcmwgk: ½ð±Ò+10, ¡ïÓаïÖú, ·Ç³£¸Ðл£¬ÎÒºóÀ´ÓÃtmpp = ((' '.join(cubefile.readlines())).replace("/n"," ")).split()½â¾öÁË 2014-10-05 16:10:53
gmy1990: ½ð±Ò+3 2014-10-05 18:50:03
|
ÄãµÄ´úÂë²»pythonic£¬²»Ò×¶ÁÒ²ºÜµÍЧ£¬ ÕâÀï¸ø¸öÀý×Ó£¬²»ÖªµÀÊDz»ÊÇÄãÒªµÄ¹¦ÄÜ def readcube(cubefile): cubedata = [] with open(cubefile) as f: lines = f.readlines() # if cubefile is large, read it in streaming or blocks # handle headers here for line in lines[2:]: for item in line.split(): cubedata.append(eval(item)) return cubedata if __name__ == '__main__': testfile = 'test.cube' data = readcube(testfile) print(len(data)) print(data[:10]) print(data[-10:]) |
9Â¥2014-10-05 15:29:16
rh1127
¾èÖú¹ó±ö (ÖøÃûдÊÖ)
Ò»Ãû¹¤³Ìʦ@ÉϺ£
- Ó¦Öú: 2 (Ó×¶ùÔ°)
- ½ð±Ò: 21407.7
- ºì»¨: 6
- Ìû×Ó: 1616
- ÔÚÏß: 139.5Сʱ
- ³æºÅ: 116848
- ×¢²á: 2005-11-25
- ÐÔ±ð: GG
- רҵ: ½ºÌåÓë½çÃæ»¯Ñ§

10Â¥2014-10-05 19:31:58









»Ø¸´´ËÂ¥
#½«ËùÓÐË«¿Õ¸ñ»»³ÉÒ»¸ö¿Õ¸ñ