24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3091  |  回复: 17

风雨同周113

金虫 (初入文坛)


[交流] 【求助】求产生变形后POSCAR的 defvector.f 程序的源文件

最近刚学习使用VASP软件,看侯博的说明书中提到计算弹性常数要用到defvector.f,请问这个程序在哪里可以找到呢?望大家给指导指导,不胜感激啊
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

songdewang

金虫 (小有名气)


风雨同周113(金币+16): 2011-07-16 21:39:37
C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
C >this simple program to get the primitive vectors after
C $\delta$ strain, in order to calculate the independent
C elastic constants of solids.
C usage: C!!!!! Please first prepare the undeformed POSCAR in OLDPOS
C >defvector.x
C >type defvector.x > create new POSCAR in file fort.3
C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
      program defvector
      real*8 privect,strvect,delta,strten,strain,pos, alat
      dimension privect(3,3),strvect(3,3),strten(3,3),strain(6)
      dimension pos(50,3)
      character*10 bravlat, title, direct
      integer i,j,k,ntype, natomi, nn
      dimension natomi(10)
C%%%%%%%%% Read the undeformed primitive vector and atomic postion %%%%%%%
      open(7,file='OLDPOS')
C%% In first line of OLDPOS, please add the number
C%% of the type of atoms after the title
      read(7,*) title, ntype
      read(7,*) alat
      do i=1,3
      read(7,*) (privect(i,j),j=1,3)
      write(*,*) (privect(i,j),j=1,3)
      enddo
      read(7,*) (natomi(i),i=1,ntype)
      nn=0
      do i =1, ntype
      nn=nn+natomi(i)
      enddo
      read(7,*) direct
      do i=1, nn
      read(7,*) (pos(i,j),j=1,3)
      enddo
C%%%%%%%%% Read the amti of strain %%%%%%%%%%%%%%%
      read(*,*) delta
C%%%%%%%%% Define the strain %%%%%%%%%%%%%%
      strain(1)=0.0
      strain(2)=delta
      strain(3)=delta
      strain(4)=0.0
      strain(5)=0.0
      strain(6)=0.0
C%%%%%%%%% Define the strain tensor %%%%%%%%%%%%%%%%%%%%%%%%
      strten(1,1)=strain(1)+1.0
      strten(1,2)=0.5*strain(6)
      strten(1,3)=0.5*strain(5)
      strten(2,1)=0.5*strain(6)
      strten(2,2)=strain(2)+1.0
      strten(2,3)=0.5*strain(4)
      strten(3,1)=0.5*strain(5)
      strten(3,2)=0.5*strain(4)
      strten(3,3)=strain(3)+1.0
C%%%%%%%%% Transform the primitive vector to the new vector under strain%%%%%
C strvect(i,j)=privect(i,j)*(I+strten(i,j))
      do k=1,3
      do i=1,3
      strvect(i,k)=0.0
      do j=1,3
      strvect(i,k)=strvect(i,k)+privect(i,j)*strten(j,k)
      enddo
      enddo
      enddo
C%%%%%%%% Write the new vector under strain%%%%%%%%%%%%
      do i=1,3
      write(*,100)(strvect(i,j),j=1,3)
      enddo
100   format(3f20.15)
C%%%%%%%%% Create the POSCAR for total energy calculation %%%%%%%%%%%%%%5
      write(3,'(A10)') title
      write(3,'(f15.10)') alat
      do i=1,3
      write(3,100)(strvect(i,j),j=1,3)
      enddo
      write(3,'(10I4)') (natomi(i), i=1,ntype)
      write(3,'(A6)') Direct
      do i=1, nn
      write(3,100) (pos(i,j),j=1,3)
      enddo
C%%%%%%%
      end
4楼2011-04-12 10:27:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

babaleo

木虫 (正式写手)



sunyang1988(金币+1): 谢谢提示 2011-04-10 00:04:45
风雨同周113(金币+2): 2011-04-10 12:53:42
打开指南,剪/贴一下defvector.f,编译.

直接给侯博士发邮件索取.
2楼2011-04-09 23:40:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cavediger

金虫 (正式写手)



zzy870720z(金币+1): 谢谢提示 2011-04-10 09:57:32
风雨同周113(金币+2): 2011-04-10 12:53:58
内容已删除
3楼2011-04-10 09:39:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ufo991

铁虫 (正式写手)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
620225楼: Originally posted by songdewang at 2011-04-12 10:27:42
C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
C >this simple program to get the primitive vectors after
C $\delta$ strain, in order to calculate the independent
C elastic co ...

为何我编译能通过,运行的时候出现invalid number:incomprehensible list input apparent state: unit 7 named OLDPOS
last format: list io
lately reading direct formatted external IO
或者apparent state: unit 5 (unnamed)
last format: list io
lately reading direct formatted external IO
list in: end of file
的问题呢?
5楼2012-05-30 10:31:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

c03185

新虫 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
1265813楼: Originally posted by ufo991 at 2012-05-30 10:31:31
为何我编译能通过,运行的时候出现invalid number:incomprehensible list input apparent state: unit 7 named OLDPOS
last format: list io
lately reading direct formatted external IO
或者apparent state: ...

请问怎么解决的阿?我也遇到了同样的问题。是不是拷贝的输入文件的格式的问题呢?
6楼2012-06-07 06:00:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ufo991

铁虫 (正式写手)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
1266835楼: Originally posted by c03185 at 2012-06-07 06:00:01
请问怎么解决的阿?我也遇到了同样的问题。是不是拷贝的输入文件的格式的问题呢?...

你是不是单独提交后台运行这个程序了?应该是要输入的detal值没给出
7楼2012-06-11 09:02:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ufo991

铁虫 (正式写手)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
620225楼: Originally posted by songdewang at 2011-04-12 10:27:42
C%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
C >this simple program to get the primitive vectors after
C $\delta$ strain, in order to calculate the independent
C elastic co ...

程序里面define the strain tensor这一部分针对所有结构所有应变都是固定的吗?只需要改动define the strain这一部分?
8楼2012-06-11 09:27:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yQyq

木虫 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
我有几个不明白的地方,希望大家帮我解释一下!
C%%%%%%%%% Define the strain %%%%%%%%%%%%%%
      strain(1)=0.0
      strain(2)=delta
      strain(3)=delta
      strain(4)=0.0
      strain(5)=0.0
      strain(6)=0.0定义的这六个应变1-3是主应变(εx,εy,εz),4-6是切应变(εyz,εzx,εxy)吗?
C%%%%%%%%% Define the strain tensor %%%%%%%%%%%%%%%%%%%%%%%%
      strten(1,1)=strain(1)+1.0
      strten(1,2)=0.5*strain(6)
      strten(1,3)=0.5*strain(5)
      strten(2,1)=0.5*strain(6)
      strten(2,2)=strain(2)+1.0
      strten(2,3)=0.5*strain(4)
      strten(3,1)=0.5*strain(5)
      strten(3,2)=0.5*strain(4)
      strten(3,3)=strain(3)+1.0
strten(1,1)=εx,加上1.0是什么意思?
另外,C%%%%%%%%% Transform the primitive vector to the new vector under strain%%%%%
C strvect(i,j)=privect(i,j)*(I+strten(i,j))
在这个地方,C表示后面的这一部分不执行吗?其中的I代表什么意思?
望大家给点见解!
9楼2012-10-12 16:27:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyren123

木虫 (文坛精英)



小木虫: 金币+0.5, 给个红包,谢谢回帖
没有高手解答啊,我也遇到这些问题了,我刚接触vasp,好多不懂得
10楼2012-10-22 11:12:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

joyce79928

铜虫 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
strvect(i,j)=privect(i,j)*(I+strten(i,j))
我也对这句话中I+strten(i,j)的I感到疑惑阿!
11楼2014-06-20 01:23:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lamb_imr

新虫 (初入文坛)



小木虫: 金币+0.5, 给个红包,谢谢回帖
如何变异defvector.f得到defvector.x文件啊?
12楼2015-04-16 16:31:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fangchaoge

金虫 (小有名气)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
12楼: Originally posted by lamb_imr at 2015-04-16 16:31:14
如何变异defvector.f得到defvector.x文件啊?

请问LZ知道如何从defvector.f得到defvector.x了吗?
13楼2015-12-01 16:20:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fangchaoge

金虫 (小有名气)


引用回帖:
12楼: Originally posted by lamb_imr at 2015-04-16 16:31:14
如何变异defvector.f得到defvector.x文件啊?

请问LZ知道如何从defvector.f得到defvector.x了没?求赐教
14楼2015-12-01 16:21:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

15楼2021-01-30 10:40:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
本帖内容被屏蔽

16楼2021-01-30 10:42:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

17楼2021-01-30 11:33:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小木虫: 金币+0.5, 给个红包,谢谢回帖
本帖内容被屏蔽

18楼2021-01-30 11:49:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 风雨同周113 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见