24小时热门版块排行榜    

查看: 465  |  回复: 4
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

bshliu

铁虫 (小有名气)

[交流] 传一个PWscf构建超晶胞到脚本程序

#!/bin/bash
echo -e "establish a supercell from a unit cell"
echo -e "Please input the number of the atoms:\c"
read atomnumber
echo -e "Please input the types of the atoms:\c"
read atomtypes
echo -e "Please in put the lattice paremeters\na   b  c  cos(ab)  cos(bc) cos(ac)"
read a b c Calpha Cbeta Cgamma
echo -e "please input the rule for supercell\n x1  y2  z3 "
read x1 y2 z3
if [ -f input.txt ];then
echo "exist"
rm -f input.txt
fi
let kcount=0
let increase=1
while [ $kcount -ne $atomnumber ]; do

echo -e "please input the $kcount atom x, y, z coordinates...\n atom type   x     y  z"
read atomtype x y z
echo -e "$x  $y  $z\n"
xx=$x; yy=$y; zz=$z
kcountx=0

   while [ $kcountx -lt $x1 ]; do
        kcounty=0
        while [ $kcounty -lt $y2 ]; do
              kcountz=0
              while [ $kcountz -lt $z3 ]; do
              x=`echo $x1 $kcountx $xx|awk '{printf "%0.8f\n", 1/$1*$2+$3/$1}'`
              y=`echo $y2 $kcounty $a $b $yy|awk '{printf "%0.8f\n", 1/$1*$2*$4/$3+$5/$1}'`
              z=`echo $z3 $kcountz $a $c $zz|awk '{printf "%0.8f\n", 1/$1*$2*$4/$3+$5/$1}'`
              echo "$x   $y   $z"
              kcountz=$((kcountz+1));
              echo $atomtype $x $y $z >>input.txt
              done
        kcounty=$((kcounty+1));
        done
   kcountx=$((kcountx+1));
  done
let kcount=kcount+1
done

直接cp在成.sh文件,按赵提示运行就可以构造任意大小到超晶报
有喜欢PWscf计算的虫子可以 交流交流
本人的
E-mail: liubaoshun@126.com
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

watermall

金虫 (小有名气)

不错,支持自给自足
3楼2008-08-19 17:55:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

haiw201

木虫 (正式写手)

不会用?
可否建个BaTiO3的Supercell演示下????
4楼2008-08-19 20:31:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bshliu

铁虫 (小有名气)

回复

你首先自己要知道一个BaTiO3晶胞的院子坐标,然后输入处理
我给出TiO2金红石 2*2*2的supercell的构造过程
首先知道TiO2金红石的六个院子坐标  -这个可用ms求出
  Ti      0.000000000     0.000000000    0.000000000  
   Ti      0.500000000     0.50000000     0.322500000  
   O       0.304800000     0.304800000    0.000000000
   O       0.695200000     0.695200000    0.000000000
   O       0.195200000     0.804800000    0.322500000
   O       0.804800000     0.195200000    0.322500000
然后执行shell
establish a supercell from a unit cell
Please input the number of the atomslease input the types of the atomslease in put the lattice paremeters
a   b  c  cos(ab)  cos(bc) cos(ac)
please input the rule for supercell
x1  y2  z3
exist
please input the 0 atom x, y, z coordinates...
atom type   x     y  z
0.000000000  0.000000000  0.000000000

0.00000000   0.00000000   0.00000000
0.00000000   0.00000000   0.32244009
0.00000000   0.50000000   0.00000000
0.00000000   0.50000000   0.32244009
0.50000000   0.00000000   0.00000000
0.50000000   0.00000000   0.32244009
0.50000000   0.50000000   0.00000000
0.50000000   0.50000000   0.32244009
please input the 1 atom x, y, z coordinates...
atom type   x     y  z
0.500000000  0.50000000  0.322500000

0.25000000   0.25000000   0.16125000
0.25000000   0.25000000   0.48369009
0.25000000   0.75000000   0.16125000
0.25000000   0.75000000   0.48369009
0.75000000   0.25000000   0.16125000
0.75000000   0.25000000   0.48369009
0.75000000   0.75000000   0.16125000
0.75000000   0.75000000   0.48369009
please input the 2 atom x, y, z coordinates...
atom type   x     y  z
0.304800000  0.304800000  0.000000000

0.15240000   0.15240000   0.00000000
0.15240000   0.15240000   0.32244009
0.15240000   0.65240000   0.00000000
0.15240000   0.65240000   0.32244009
0.65240000   0.15240000   0.00000000
0.65240000   0.15240000   0.32244009
0.65240000   0.65240000   0.00000000
0.65240000   0.65240000   0.32244009
please input the 3 atom x, y, z coordinates...
atom type   x     y  z
0.695200000  0.695200000  0.000000000

0.34760000   0.34760000   0.00000000
0.34760000   0.34760000   0.32244009
0.34760000   0.84760000   0.00000000
0.34760000   0.84760000   0.32244009
0.84760000   0.34760000   0.00000000
0.84760000   0.34760000   0.32244009
0.84760000   0.84760000   0.00000000
0.84760000   0.84760000   0.32244009
please input the 4 atom x, y, z coordinates...
atom type   x     y  z
0.195200000  0.804800000  0.322500000

0.09760000   0.40240000   0.16125000
0.09760000   0.40240000   0.48369009
0.09760000   0.90240000   0.16125000
0.09760000   0.90240000   0.48369009
0.59760000   0.40240000   0.16125000
0.59760000   0.40240000   0.48369009
0.59760000   0.90240000   0.16125000
0.59760000   0.90240000   0.48369009
please input the 5 atom x, y, z coordinates...
atom type   x     y  z
0.804800000  0.195200000  0.322500000

0.40240000   0.09760000   0.16125000
0.40240000   0.09760000   0.48369009
0.40240000   0.59760000   0.16125000
0.40240000   0.59760000   0.48369009
0.90240000   0.09760000   0.16125000
0.90240000   0.09760000   0.48369009
0.90240000   0.59760000   0.16125000
0.90240000   0.59760000   0.48369009
输出坐标文件在input.txt
希望对你有用
5楼2008-08-19 22:12:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 302材料工程求调剂 +4 Doleres 2026-03-01 5/250 2026-03-01 11:52 by liqiongjy
[考研] 290求调剂 +7 材料专硕调剂; 2026-02-28 8/400 2026-03-01 11:45 by 王伟要上岸啊
[考研] 材料类求调剂 +8 wana_kiko 2026-02-28 8/400 2026-03-01 11:44 by 王伟要上岸啊
[考研] 材料化工调剂 +6 今夏不夏 2026-03-01 6/300 2026-03-01 11:28 by gaoxiaoniuma
[考研] 311求调剂 +9 南迦720 2026-02-28 10/500 2026-03-01 10:55 by sunny81
[考研] 291分工科求调剂 +7 science饿饿 2026-03-01 8/400 2026-03-01 10:43 by sunny81
[考研] 0856化工专硕求调剂 +5 董boxing 2026-03-01 5/250 2026-03-01 10:41 by sunny81
[硕博家园] 2025届双非化工硕士毕业,申博 +3 更多的是 2026-02-27 4/200 2026-03-01 10:04 by ztg729
[硕博家园] 博士自荐 +6 科研狗111 2026-02-26 10/500 2026-03-01 10:02 by 科研狗111
[论文投稿] Optics letters投稿被拒求助 30+3 luckyry 2026-02-26 4/200 2026-03-01 09:06 by babero
[基金申请] 面上模板改不了页边距吧? +5 ieewxg 2026-02-25 6/300 2026-03-01 00:10 by addressing
[考研] 292求调剂 +3 yhk_819 2026-02-28 3/150 2026-02-28 21:57 by gaoxiaoniuma
[考博] 26申博 +4 想申博! 2026-02-26 4/200 2026-02-28 21:37 by limorning
[考研] 264求调剂 +3 巴拉巴拉根556 2026-02-28 3/150 2026-02-28 21:31 by gaoxiaoniuma
[考研] 085600材料工程一志愿中科大总分312求调剂 +8 吃宵夜1 2026-02-28 10/500 2026-02-28 20:27 by L135790
[考研] 298求调剂 +8 人间唯你是清欢 2026-02-28 11/550 2026-02-28 20:26 by L135790
[考研] 276求调剂 +3 路lyh123 2026-02-28 4/200 2026-02-28 19:45 by 路lyh123
[高分子] 求环氧树脂研发1名 +3 孙xc 2026-02-25 11/550 2026-02-28 16:57 by ichall
[考研] 265分求调剂不调专业和学校有行学上就 +4 礼堂丁真258 2026-02-28 6/300 2026-02-28 16:18 by 求调剂zz
[考研] 304求调剂 +5 曼殊2266 2026-02-28 6/300 2026-02-28 12:44 by 迷糊CCPs
信息提示
请填处理意见