24小时热门版块排行榜    

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

haiw201

木虫 (正式写手)

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

watermall

金虫 (小有名气)

不错,支持自给自足
3楼2008-08-19 17:55:04
已阅   回复此楼   关注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的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +32 AI8RaGaPaSCR 2026-08-07 34/1700 2026-08-13 22:15 by bPzCM0AzNM3W
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +10 医学老男孩 2026-08-13 27/1350 2026-08-13 21:43 by chemsynth
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +4 majunge000 2026-08-11 6/300 2026-08-13 16:50 by 四季常青藤
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 关于Filecode分析方法 +9 majunge000 2026-08-10 11/550 2026-08-13 10:40 by ZH远山
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +9 家与远方 2026-08-10 14/700 2026-08-13 09:41 by 臭臭不臭01
[基金申请] 好奇怪的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 布布和一二
[基金申请] 是这周出结果还是下周出结果? +3 yuleib84 2026-08-11 3/150 2026-08-11 21:53 by jnhyjjm
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
信息提示
请填处理意见