24小时热门版块排行榜    

查看: 607  |  回复: 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的回帖

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的回帖
查看全部 5 个回答

watermall

金虫 (小有名气)

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

haiw201

木虫 (正式写手)

不会用?
可否建个BaTiO3的Supercell演示下????
4楼2008-08-19 20:31:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +57 AI8RaGaPaSCR 2026-08-07 60/3000 2026-08-14 04:45 by bxqFb8Dih2p1
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +10 家与远方 2026-08-10 15/750 2026-08-14 02:08 by 绵羊哥哥
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +11 医学老男孩 2026-08-13 29/1450 2026-08-14 00:04 by 大快人心啦
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] filecode +14 documentary 2026-08-10 16/800 2026-08-13 16:39 by 润生71
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +22 Lanmanbaby 2026-08-09 36/1800 2026-08-12 22:50 by sdfapple719
[基金申请] 好奇怪的filecode +5 布布和一二 2026-08-08 6/300 2026-08-12 16:11 by 云上清扬
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +4 工厂打螺丝 2026-08-08 4/200 2026-08-12 09:18 by hansi2025
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +7 布布和一二 2026-08-10 10/500 2026-08-12 09:12 by 布布和一二
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
信息提示
请填处理意见