±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 3724  |  »Ø¸´: 18

fly_elephan

Òø³æ (СÓÐÃûÆø)

[½»Á÷] vasp¼ÆËã½á¹û´¦Àí̬ÃܶÈÒªÓõ½µÄ³ÌÐò ÒÑÓÐ7È˲ÎÓë

ÔÚ²ÄÁϵçÑ§ÌØÐÔµÄÑо¿ÖУ¬ÄÜ´øºÍ̬ÃܶÈÊÇÎÒÃÇ×î¹ØÐĵģ¬ÏÂÃæµÄÕâ¸ö³ÌÐò¿ÉÒÔÓÃÓÚvasp¼ÆËã½á¹ûµÄ´¦Àí£¬¿ÉÒÔ·ÖÀë³ö×Ü̬ÃܶȺͷÖ̬Ãܶȣ¬Õâ¸ö³ÌÐòÊÇÎÒÃÇÑо¿ËùÓÃÁ˺ܾõ쬾ø¶ÔûÎÊÌ⣬ÓÐ×ÊÔ´´ó¼Ò¹²Ïí£¬»¶Ó­ÏÂÔØ¡£
#! /bin/ksh
# Script to break the VASP DOSCAR file into segments for
# each atomic site.
# JMS NRL 5/0/02

# Modified to also align the Fermi level from the ground state
# to E=0.0
# JMS NRL 6/19/02


# Executables reside here
BIN=~/tzyy/AlP/swnt10


if [ $# -ne 0 ]; then
        echo "Usage: split_dos"
        exit 2
fi

# Script to split the DOSCAR file into the atomic
# projections labeled by atom number
dosfile=DOSCAR
outfile=OUTCAR
infile=INCAR


# Token for splitting the files
token=$(sed -n '6 p' $dosfile | awk '{print $1}')

# Number of points
nl=$(sed -n '6 p' $dosfile | awk '{print $3}')

# Number of atoms
natom=$(sed -n '1 p' $dosfile | awk '{print $1}')


# Get the Fermi level if the OUTCAR file is present,
# else we set it to zero.
if [ -a $outfile ]; then
    echo "The" $outfile "exists, we use it to get the Fermi level,"
    echo "the RWIGS tag and the number of spins."
    efermi=$(grep "E-fermi" $outfile | tail -1 | awk '{print $3}')
    echo "Fermi level:" $efermi
    nspin=$(grep "ISPIN" $outfile | tail -1 | awk '{print $3}')
    if [ $nspin -eq 2 ]; then
        echo "Spin polarized calculation"
    else
        echo "Unpolarized calculation"
    fi

# 2.a
# JMS 2/3/03 Modified to accept specification by LORBIT token.
#
    lorbit=$(grep "LORBIT" $outfile | tail -1 | awk '{print $3}')
    if [ $lorbit -ge 10 ]; then
        echo "LORBIT > 10"
        echo "WARNING: not completely test for vasp.4.*"
        echo "Use at your own risk. Please check results for consistency."
        form=1
    else
# 2.a
        rwigs=$(grep "RWIGS" $outfile | tail -1 | awk '{print $3}' | sed 's/\.//g')
        if [ $rwigs -eq -100 ]; then
            echo "RWIGS token not set"
            form=0
        else
            echo "RWIGS token set"
            form=1
        fi
# 2.a
    fi
# 2.a

else
    echo "The" $outfile "does not exist, we set the Fermi level to 0"
    echo "assume an unpolarized calculation, and RWIGS not set"
    form=0
    nspin=1
    efermi=0.0
fi

# If the outcar file is not present and you wish to set something by hand
# you should do it here. Uncomment the tokens below and set them by hand.

#efermi=2.255
#form=
#nspin=



# Get the atomic coordinates
$BIN/vp >| tmp.dat
tail -$natom tmp.dat | awk '{printf "%s %12.8f %12.8f %12.8f \n", "#", $2, $3, $4}' >| tmp.dat2


# Total is first DOS
if [ $form -eq 0 ]; then
i=0
else
i=0
fi


start=7
end=$((start+nl-1))
#echo $start $end
#exit 0
rm -f DOS0
if [ $form -eq 1 ]; then

    while [ $i -le $natom ]; do

            #echo $i $start $end

        if [ $i -gt 0 ]; then
            sed -n ''$i' p' tmp.dat2 >| DOS$i
        fi

        if [ $i -gt 0 ]; then

# Atomic projected DOS
            if [ $nspin -eq 2 ]; then
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, -1*$3, $4, -1*$5, $6, -1*$7}' >> DOS$i
            else
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, $3, $4 }' >> DOS$i
            fi               

        else

# Total DOS
            if [ $nspin -eq 2 ]; then
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, -1*$3, $4, -1*$5 }' >> DOS$i
            else
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, $3 }' >> DOS$i
            fi

        fi

        start=$((end+2))
        end=$((start+nl-1))
        i=$((i+1))
    done

else

    while [ $i -le 0 ]; do

            #echo $i $start $end

        if [ $i -gt 0 ]; then
            sed -n ''$i' p' tmp.dat2 >| DOS$i
        fi

        if [ $i -gt 0 ]; then

# Atomic projected DOS
            if [ $nspin -eq 2 ]; then
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, -1*$3, $4, -1*$5, $6, -1*$7}' >> DOS$i
            else
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, $3, $4 }' >> DOS$i
            fi               

        else

# Total DOS
            if [ $nspin -eq 2 ]; then
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, -1*$3, $4, -1*$5 }' >> DOS$i
            else
                sed -n ''$start','$end' p' $dosfile | awk '{printf "%12.8f %12.8f %12.8f \n", $1+(-1)*'$efermi', $2, $3 }' >> DOS$i
            fi

        fi

        start=$((end+2))
        end=$((start+nl-1))
        i=$((i+1))
    done

fi

exit 0
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹ØÉ̼ÒÍÆ¼ö: (ÎÒÒ²ÒªÔÚÕâÀïÍÆ¹ã)

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

cenwanglai

ÈÙÓþ°æÖ÷ (ÖªÃû×÷¼Ò)

ÀϺÍɽâ«ËöÅɾŶÎ

ÓÅÐã°æÖ÷

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
zzy870720z(½ð±Ò+2): ллָ½Ì 2011-05-30 15:23:30
Õâ¸ö³ÌÐòvtstool codeÖÐÓеġ£

ÄãÃÇ×é¿´ÆðÀ´ÊÇ×öµ¥±ÚÄÉÃ׹ܵģ¬ËùÒÔÕâ¸ö½Å±¾¿ÉÒÔÒ»Ö±ÓÃ×Å¡£

Èç¹ûº¬ÓÐfµç×Ó£¬¾ÍûÓа취ÓÃÁË¡£LORBIT = 11ºÍLORBIT = 10ÊÇÓкܴó²îÒìµÄ£¬Õâ¸ö½Å±¾ÐèÒªÐ޸IJÅÄÜÓá£

» ±¾ÌûÒÑ»ñµÃµÄºì»¨£¨×îÐÂ10¶ä£©

2Â¥2011-05-30 11:01:16
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wujing110

½û³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
±¾ÌûÄÚÈݱ»ÆÁ±Î

3Â¥2011-11-14 11:21:03
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

cenwanglai

ÈÙÓþ°æÖ÷ (ÖªÃû×÷¼Ò)

ÀϺÍɽâ«ËöÅɾŶÎ

ÓÅÐã°æÖ÷

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
ÒýÓûØÌû:
3Â¥: Originally posted by wujing110 at 2011-11-14 11:21:03:
ÇëÎÊÇø³¤Í¯Ð¬£¬LORBIT = 11ʱºòÓ¦¸ÃÔõô¸Äѽ£¿ÎÒÉèÖÃLORBIT = 11£¬Ò»¹²ÓÐ19ÁÐÊý¾Ý£¬µ«ÊÇÎÒÏÖÔÚÖ»ÏëÒª s+,s-,p+,p-,d+,d-£¬ÄÇЩ½Ç¶¯Á¿·ÖÁ¿ÒªÒ»ÁÐÒ»ÁмӳÉ×ܵÄô£¿

Êǰ¡¡£µÚËÄÁе½¾ÅÁÐÊÇpµÄÈý¸ö·ÖÁ¿¼°ÉÏÏÂÐý¡£Èý¸öÆæÊýÁÐÏà¼ÓµÄp+£¬Èý¸öżÊýÁÐÏà¼ÓµÄp-¡£ºóÃæ10ÁÐÊÇd·ÖÁ¿¼°×ÔÐý¡£ÉÏÐýºÍÏÂÐý·Ö±ðÏà¼Ó¡£

¿ÉÒÔÓÃexcel»òÕßoriginÀ´×öÁеÄÏà¼Ó¡£
4Â¥2011-11-14 13:21:54
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

gougou531

½û³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
±¾ÌûÄÚÈݱ»ÆÁ±Î

5Â¥2011-11-14 14:05:43
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

cenwanglai

ÈÙÓþ°æÖ÷ (ÖªÃû×÷¼Ò)

ÀϺÍɽâ«ËöÅɾŶÎ

ÓÅÐã°æÖ÷

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
ÒýÓûØÌû:
5Â¥: Originally posted by gougou531 at 2011-11-14 14:05:43:
Çø³¤£¬ÎÒiÔõô¾õµÃÕâЩÊý¾ÝÊÇÔÚprocarÖУ¬²»ÊÇÔÚdoscarÖУ¬ÉèÖÃlorbit=11Ö»ÊÇÓ°Ïìdoscar£¬doscarÓ°ÏìС°É£¬Ö»Êǵ±lorbit=11ʱdoscarÖÐÏñOÔ­×Ó»áÓÐd¹ìµÀµÄ·ÖÁ¿¡£Ð»Ð»

POSCARºÍPROCARÖж¼ÓС£ÖÁÓÚ¶þÕßÓÐÊ²Ã´Çø±ð£¬ÎÒûÓÐÑо¿¹ý~
6Â¥2011-11-14 14:06:49
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

gougou531

½û³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
±¾ÌûÄÚÈݱ»ÆÁ±Î

7Â¥2011-11-14 14:09:06
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

cenwanglai

ÈÙÓþ°æÖ÷ (ÖªÃû×÷¼Ò)

ÀϺÍɽâ«ËöÅɾŶÎ

ÓÅÐã°æÖ÷

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
ÒýÓûØÌû:
7Â¥: Originally posted by gougou531 at 2011-11-14 14:09:06:
ÎÒµÄDOSCARÖУ¬Ö»ÓÐs£¬p£¬dµÄÉÏÏÂ×ÔÐý£¬Ã»ÓÐÄã˵µÄ½«P¹ìµÀͶӰµ½px£¬py£¬pz°¡¡£ÕâÊÇÔõô»ØÊ£¬ÊÇÎÒµÄÉèÖÃÓÐÎÊÌâ

Òª±£Ö¤ËùÓõÄÊÆÊÇpw91¡£


ǧÍòǧÍòÒª×Ðϸ¿´ÊֲᡣÕâÊÇǧ°ÙÄêÀ´£¬Ñ§Ï°vaspºÍÆäËûÈí¼þµÄÈ˵ÄÖÒ¸æ~
8Â¥2011-11-14 14:11:09
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wujing110

½û³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
±¾ÌûÄÚÈݱ»ÆÁ±Î

9Â¥2011-11-14 16:40:10
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

cenwanglai

ÈÙÓþ°æÖ÷ (ÖªÃû×÷¼Ò)

ÀϺÍɽâ«ËöÅɾŶÎ

ÓÅÐã°æÖ÷

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû
ÒýÓûØÌû:
9Â¥: Originally posted by wujing110 at 2011-11-14 16:40:10:
Ð»Ð»Çø³¤Í¯Ð¬
ÎÒ»¹ÒªÒ»¸öÎÊÌâ¾ÍÊÇ£¬ÎÒ¿´µ½ÎÄÏ×ÖÐÓÐ×ö³öt2gºÍeg¹ìµÀµÄͼ£¬t2gÓÉdxy,dxz,dyz×é³Éô£¿ÄÇÎҰѶÔÓ¦µÄÕ⼸ÁÐÏà¼Ó¾ÍÊÇt2g¹ìµÀô£¿ÄÇ eg¹ìµÀÄØ£¿ÇóÇø³¤¸ø½²½â½²½â

Õâ¸öÊÇdÎåÖØ¼æ²¢¹ìµÀ£¨Äܼ¶£©µÄ·ÖÁÑ¡£·ÖÁѳÉÉÏÁ½×飬Á½ÉÏÈýÏ»òÕßÈýÉÏÁ½Ï¡£Èý¸öÒ»×éµÄÊÇt2g£¬Á½¸öÒ»×éµÄÊÇeg¡£ÕâÁ½×鼿²¢Äܼ¶ÎªÊ²Ã´Òª¼ÓºÍÄØ£¿

¼Ó²»¼ÓËæÄã°É£¬ÎÒÒ²²»Çå³þÄãÒª¸ÉʲôÓá£Òª×¢ÒâµÄÊÇt2gºÍegËù¶ÔÓ¦µÄÊÇʲô¡£dxyÖ®ÀàµÄdºóÃæµÄϱêÓëÄãµÄ¾§°û×ø±êÖáµÄѡȡÓйء£
10Â¥2011-11-14 16:50:58
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ fly_elephan µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] ѧ˶274Çóµ÷¼Á +16 LiÀîÓã 2026-03-26 16/800 2026-03-31 12:27 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] Ò»Ö¾Ô¸±±»¯085600²ÄÁÏר˶275|ÓÐÎÄÕÂרÀû£üÇóµ÷¼Á +15 Micky11223 2026-03-25 16/800 2026-03-31 12:15 by oooqiao
[¿¼ÑÐ] »úеѧ˶×Ü·Ö317Çóµ÷¼Á£¡£¡£¡£¡ +5 Acaciad 2026-03-25 5/250 2026-03-31 12:04 by ±±·çÖ®Éñ.
[¿¼ÑÐ] µ÷¼ÁÇóԺУÕÐÊÕ +7 º×¾¨¸ë 2026-03-28 7/350 2026-03-31 11:21 by oooqiao
[¿¼ÑÐ] 085600²ÄÁÏÓ뻯¹¤329·ÖÇóµ÷¼Á +5 ÕâÊÇÓÐÌ«ÑôÍÛ 2026-03-25 5/250 2026-03-31 09:59 by luoyongfeng
[¿¼ÑÐ] Ò»Ö¾Ô¸Î÷½»288»¯¹¤×¨Ë¶Çóµ÷¼Á +4 ºÃÔ˺ÃÔË½Ó½Ó 2026-03-24 4/200 2026-03-31 09:18 by Î÷¾©Ñ§ÔºÍÁľ¹¤³
[¿¼ÑÐ] Ó¢Ò»ÊýÒ»408£¬×Ü·Ö284£¬¶þÕ½Õæ³ÏÇóµ÷¼Á +3 12.27 2026-03-30 5/250 2026-03-31 00:47 by ²»³Ôâ¹û17
[¿¼ÑÐ] 327Çóµ÷¼Á +5 С¿¨²»¿¨. 2026-03-29 5/250 2026-03-30 19:30 by Wang200018
[¿¼ÑÐ] 0703»¯Ñ§Çóµ÷¼Á +6 µ¤ÇàÄÌ¸Ç 2026-03-26 8/400 2026-03-30 18:33 by ̽123
[¿¼ÑÐ] 334·Ö Ò»Ö¾Ô¸ÎäÀí ²ÄÁÏÇóµ÷¼Á +16 ÀîÀî²»·þÊä 2026-03-26 16/800 2026-03-30 17:47 by wangjy2002
[¿¼ÑÐ] 329Çóµ÷¼Á£¬Ò»Ö¾Ô¸Î÷±±¹¤Òµ´óѧ£¬²ÄÁϹ¤³Ì£¨085601£© +5 СС»úÁ鳿 2026-03-29 11/550 2026-03-30 15:02 by Wang200018
[¿¼ÑÐ] 311Çóµ÷¼Á +6 ¶¬Ê®Èý 2026-03-24 6/300 2026-03-29 20:45 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] ¡¾Çóµ÷¼Á¡¿085601²ÄÁϹ¤³Ìר˶ | ×Ü·Ö272 | +7 ½Å»¬µÄÊØ·¨¹«Ãñ 2026-03-27 7/350 2026-03-29 20:21 by dophin1985
[¿¼ÑÐ] ¿¼Ñе÷¼Á +7 СÀ¯ÐÂ±Ê 2026-03-29 7/350 2026-03-29 19:00 by ѧԱ8dgXkO
[¿¼ÑÐ] 085405 ¿¼µÄ11408Çó¸÷λÀÏʦ´ø×ß +3 Qiuѧing 2026-03-28 3/150 2026-03-28 09:19 by ÀֺǺǵÄ×·ÃÎÈË
[¿¼ÑÐ] ¸´ÊÔµ÷¼Á£¬Ò»Ö¾Ô¸ÄÏÅ©083200ʳƷ¿ÆÑ§Ó빤³Ì +5 XQTJZ 2026-03-26 5/250 2026-03-27 14:49 by ¿ñìÅÂóµ±µ±
[¿¼ÑÐ] 336²ÄÁÏÇóµ÷¼Á +7 ³ÂäÞÓ¨ 2026-03-26 9/450 2026-03-27 00:20 by wxiongid
[¿¼ÑÐ] 309Çóµ÷¼Á +4 gajsj 2026-03-25 5/250 2026-03-26 00:27 by Dyhoer
[¿¼ÑÐ] ¡¾2026¿¼Ñе÷¼Á¡¿ÖÆÒ©¹¤³Ì 284·Ö ÇóÏà¹Ø×¨Òµµ÷¼ÁÃû¶î +4 Ô¬Û¼Û¼ 2026-03-25 8/400 2026-03-25 14:32 by lbsjt
[¿¼ÑÐ] 347Çóµ÷¼Á +4 L when 2026-03-25 4/200 2026-03-25 13:37 by cocolv
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û