±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 3726  |  »Ø¸´: 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µÄ»ØÌû

gougou531

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

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

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

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µÄ»ØÌû
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 08¿ªÍ·¿´¹ýÀ´£¡£¡£¡ +3 wwwwffffff 2026-03-31 5/250 2026-03-31 17:45 by Ðǹâ/
[¿¼ÑÐ] 0710ÉúÎïѧÇóµ÷¼Á£¡ +5 ÐðÊöÎÄ 2026-03-31 5/250 2026-03-31 17:32 by ÌÆãå¶ù
[¿¼ÑÐ] ÉúÒ½¹¤0831µ÷¼ÁÇóÍÆ¼ö +4 СÐÜî£î£_s 2026-03-27 6/300 2026-03-31 17:12 by ¼Çʱ¾2026
[¿¼ÑÐ] 286Çóµ÷¼Á +6 Faune 2026-03-30 6/300 2026-03-31 14:37 by jp9609
[¿¼ÑÐ] Ó¢Ò»ÊýÒ»×Ü·Ö334Çóµ÷¼Á +4 ³ÂÑôÀ¤ 2026-03-31 4/200 2026-03-31 14:22 by ¼Çʱ¾2026
[¿¼ÑÐ] 322Çóµ÷¼Á +10 ¾É… 2026-03-24 10/500 2026-03-31 13:31 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] 334Çóµ÷¼Á +7 Trying] 2026-03-31 7/350 2026-03-31 12:33 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] 085602»¯¹¤Çóµ÷¼Á£¨331·Ö£© +8 111@127 2026-03-30 8/400 2026-03-30 21:23 by Ñо¿É®µ¼µ¼
[¿¼ÑÐ] 085600 286·Ö ²ÄÁÏÇóµ÷¼Á +11 ÂéÀ±öÏÓã 2026-03-27 12/600 2026-03-30 19:33 by Wang200018
[¿¼ÑÐ] Ò»Ö¾Ô¸ÄÏ¿ª´óѧ0710ÉúÎïѧ359Çóµ÷¼Á +5 ÍÃÍÃÍÃ111223314 2026-03-29 7/350 2026-03-30 18:29 by ÍÃÍÃÍÃ111223314
[¿¼ÑÐ] ²ÄÁÏ»¯¹¤340Çóµ÷¼Á +3 jhx777 2026-03-30 3/150 2026-03-30 17:54 by JourneyLucky
[¿¼ÑÐ] 316Çóµ÷¼Á +7 ½­´Ç666 2026-03-26 7/350 2026-03-28 21:28 by sanrepian
[¿¼ÑÐ] ѹ¹ú¼ÒÒ»ÇøÏߣ¬Çóµ¼Ê¦ÊÕÁô£¬Óж÷±ØÐ»£¡ +7 ÃÔÈ˵Ĺþ¹þ 2026-03-28 7/350 2026-03-28 16:47 by ´ß»¯´ó°×
[¿¼ÑÐ] ±¾¿ÆÐÂÄÜÔ´¿ÆÑ§Ó빤³Ì£¬Ò»Ö¾Ô¸»ªÀíÄܶ¯285Çóµ÷¼Á +3 AZMK 2026-03-27 5/250 2026-03-28 16:19 by xxxsssccc
[¿¼ÑÐ] 304Çóµ÷¼Á +6 ÂüÊâ2266 2026-03-27 6/300 2026-03-28 14:10 by ÌÆãå¶ù
[¿¼ÑÐ] 292Çóµ÷¼Á +14 ¶ì¶ì¶ì¶î¶î¶î¶î¶ 2026-03-25 15/750 2026-03-28 08:45 by WYUMater
[¿¼ÑÐ] 315·ÖÇóµ÷¼Á +7 26¿¼ÑÐÉϰ¶°æ26 2026-03-26 7/350 2026-03-28 04:05 by fmesaito
[¿¼ÑÐ] Ò»Ö¾Ô¸ÉϺ£Àí¹¤ÄÜÔ´¶¯Á¦£¨085800£©310·ÖÇóµ÷¼Á +3 zhangmingc 2026-03-27 4/200 2026-03-27 19:01 by ¸øÄãÄã×¢ÒâÐÝÏ¢
[ÂÛÎÄͶ¸å] Journal of Mechanical Science and Technology +3 Russ_ss 2026-03-25 5/250 2026-03-27 10:49 by ½С¹û»­´ó±ý
[¿¼ÑÐ] µ÷¼ÁÇóÊÕÁô +7 ¹ûÈ»ÓÐÎÒ 2026-03-26 7/350 2026-03-27 00:26 by wxiongid
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û