24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3088  |  回复: 17
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

风雨同周113

金虫 (初入文坛)


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

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

» 猜你喜欢

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

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

查看全部散金贴

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

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

18楼2021-01-30 11:49:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 18 个回答

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的回帖

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的回帖

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的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见