DYNMAT and hessian matrix
Moderators: Global Moderator, Moderator
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
DYNMAT and hessian matrix
dear vasp-users and administrator,
To be able to do phonon calculations, one needs a Hessian matrix, which can be obtained using VASP (IBRION=5...
During the process of this calculation VASP produces a secondary file called DYNMAT (of which no information can be found in the VASP manual).
The name gives the impression it might contain information on a Dynamical/Dynamics matrix.
* Can someone tell me what the actual formatting of the entire DYNMAT file is?
* Is the are the components of the HESSIAN matrix given in the OUTCAR file, the x,y,z derivatives of the values found in the DYNMAT file
--> I the impression they are.
=> this means that the values in DYNMAT should be dE/dx, dE/dy, dE/dz, However doing this by hand I find values roughly a factor 2 to small.
thx
Danny
To be able to do phonon calculations, one needs a Hessian matrix, which can be obtained using VASP (IBRION=5...
During the process of this calculation VASP produces a secondary file called DYNMAT (of which no information can be found in the VASP manual).
The name gives the impression it might contain information on a Dynamical/Dynamics matrix.
* Can someone tell me what the actual formatting of the entire DYNMAT file is?
* Is the are the components of the HESSIAN matrix given in the OUTCAR file, the x,y,z derivatives of the values found in the DYNMAT file
--> I the impression they are.
=> this means that the values in DYNMAT should be dE/dx, dE/dy, dE/dz, However doing this by hand I find values roughly a factor 2 to small.
thx
Danny
Last edited by Danny on Tue May 04, 2010 1:01 pm, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
DYNMAT and hessian matrix
The values written in the DYNMAT file are the derivatives of the force with respect to the corresponding displacement, scaled by a parameter STEP. For IBRION = 5,6 we have STEP = POTIM while for IBRION =7,8 we have STEP = 1.
A simple example for a bcc-structure (2 atoms in a cubic cell) by using IBRION = 6, NFREE = 2 and POTIM = 0.0050 gives the following forces:
--
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
0.00500 0.00000 0.00000 -0.048071 0.000000 0.000000
1.41925 1.41925 1.41925 0.048071 0.000000 0.000000
-----------------------------------------------------------------------------------
total drift: 0.001458 0.000000 0.000006
--
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
-0.00500 0.00000 0.00000 0.048014 0.000000 0.000000
1.41925 1.41925 1.41925 -0.048014 0.000000 0.000000
-----------------------------------------------------------------------------------
and the following DYNMAT:
1 2 1
55.847
1 1 0.0050 0.0000 0.0000
-0.048043 0.000000 0.000000
0.048043 0.000000 0.000000
The derivatives are obtained as (F(POTIM) - F(-POTIM))/(2*POTIM) for each displacement and atom. The written values are then these derivatives multiplied with POTIM.
Please notice that the scaling parameter is written on the third line in the DYNMAT file.
Does this clear things up?
Cheers,
/Dan
<span class='smallblacktext'>[ Edited Tue May 04 2010, 08:53PM ]</span>
A simple example for a bcc-structure (2 atoms in a cubic cell) by using IBRION = 6, NFREE = 2 and POTIM = 0.0050 gives the following forces:
--
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
0.00500 0.00000 0.00000 -0.048071 0.000000 0.000000
1.41925 1.41925 1.41925 0.048071 0.000000 0.000000
-----------------------------------------------------------------------------------
total drift: 0.001458 0.000000 0.000006
--
POSITION TOTAL-FORCE (eV/Angst)
-----------------------------------------------------------------------------------
-0.00500 0.00000 0.00000 0.048014 0.000000 0.000000
1.41925 1.41925 1.41925 -0.048014 0.000000 0.000000
-----------------------------------------------------------------------------------
and the following DYNMAT:
1 2 1
55.847
1 1 0.0050 0.0000 0.0000
-0.048043 0.000000 0.000000
0.048043 0.000000 0.000000
The derivatives are obtained as (F(POTIM) - F(-POTIM))/(2*POTIM) for each displacement and atom. The written values are then these derivatives multiplied with POTIM.
Please notice that the scaling parameter is written on the third line in the DYNMAT file.
Does this clear things up?
Cheers,
/Dan
<span class='smallblacktext'>[ Edited Tue May 04 2010, 08:53PM ]</span>
Last edited by forsdan on Tue May 04, 2010 6:45 pm, edited 1 time in total.
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
DYNMAT and hessian matrix
ok, that would explain the ~factor 2.
and then the entrance in the Hessian matrix is the derivative of the force given in DYNMAT to the displacement, in this case element (1,1) would be
-0.048043/0.0050=-9.6085
and (1,2) would be
-0.048043/0.0 which would be set to 0?
(X-component, derived to y displacement)
Danny
and then the entrance in the Hessian matrix is the derivative of the force given in DYNMAT to the displacement, in this case element (1,1) would be
-0.048043/0.0050=-9.6085
and (1,2) would be
-0.048043/0.0 which would be set to 0?
(X-component, derived to y displacement)
Danny
Last edited by Danny on Wed May 05, 2010 8:45 am, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
DYNMAT and hessian matrix
No.
The corresponding second-derivatives are: dFx1/dx1 = -9.608544, dFy1/dx1 = dFz1/dx1 = 0 (since Fy1 = Fz1 = 0), dFx2/dx1 = 9.608544, dFy2/dx1 = dFz2/dx1 = 0 (since Fy2 = Fz2 = 0). Fx1 here denotes the x-component of the force on atom 1.
Symmetry arguments then gives the Hessian matrix:
1X 1Y 1Z 2X 2Y 2Z
1X -9.608544 0.000000 0.000000 9.608544 0.000000 0.000000
1Y 0.000000 -9.608544 0.000000 0.000000 9.608544 0.000000
1Z 0.000000 0.000000 -9.608544 0.000000 0.000000 9.608544
2X 9.608544 0.000000 0.000000 -9.608544 0.000000 0.000000
2Y 0.000000 9.608544 0.000000 0.000000 -9.608544 0.000000
2Z 0.000000 0.000000 9.608544 0.000000 0.000000 -9.608544
<span class='smallblacktext'>[ Edited Wed May 05 2010, 11:18AM ]</span>
The corresponding second-derivatives are: dFx1/dx1 = -9.608544, dFy1/dx1 = dFz1/dx1 = 0 (since Fy1 = Fz1 = 0), dFx2/dx1 = 9.608544, dFy2/dx1 = dFz2/dx1 = 0 (since Fy2 = Fz2 = 0). Fx1 here denotes the x-component of the force on atom 1.
Symmetry arguments then gives the Hessian matrix:
1X 1Y 1Z 2X 2Y 2Z
1X -9.608544 0.000000 0.000000 9.608544 0.000000 0.000000
1Y 0.000000 -9.608544 0.000000 0.000000 9.608544 0.000000
1Z 0.000000 0.000000 -9.608544 0.000000 0.000000 9.608544
2X 9.608544 0.000000 0.000000 -9.608544 0.000000 0.000000
2Y 0.000000 9.608544 0.000000 0.000000 -9.608544 0.000000
2Z 0.000000 0.000000 9.608544 0.000000 0.000000 -9.608544
<span class='smallblacktext'>[ Edited Wed May 05 2010, 11:18AM ]</span>
Last edited by forsdan on Wed May 05, 2010 9:14 am, edited 1 time in total.
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
DYNMAT and hessian matrix
ok, that's clear.
With this information it is possible to split a Hessian calculation up, which is what I was looking for.
thx
danny
With this information it is possible to split a Hessian calculation up, which is what I was looking for.
thx
danny
Last edited by Danny on Thu May 06, 2010 10:03 am, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
DYNMAT and hessian matrix
Well, if you don't mind sorting out the symmetry folding, and to have an extra initial self-consistency cycle for each separate calculation, it is possible to split it up like that.
Please notice that you loose some digits if you use the written values as compared to the values stored in VASP. The effect on the frequencies will probably be small, but it may depend on the accuracy required.
Cheers,
/Dan
<span class='smallblacktext'>[ Edited Thu May 06 2010, 02:47PM ]</span>
Please notice that you loose some digits if you use the written values as compared to the values stored in VASP. The effect on the frequencies will probably be small, but it may depend on the accuracy required.
Cheers,
/Dan
<span class='smallblacktext'>[ Edited Thu May 06 2010, 02:47PM ]</span>
Last edited by forsdan on Thu May 06, 2010 12:45 pm, edited 1 time in total.
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
DYNMAT and hessian matrix
symmetry folding? You mean when I try to build a Hessian of a larger cell than I'm using?
Danny
Danny
Last edited by Danny on Fri May 07, 2010 8:28 am, edited 1 time in total.
-
- Sr. Member
- Posts: 339
- Joined: Mon Apr 24, 2006 9:07 am
- License Nr.: 173
- Location: Gothenburg, Sweden
DYNMAT and hessian matrix
No, I referred to that you only have to displace a fraction of all the atoms and then can use symmetry arguments to construct the full Hessian.
Last edited by forsdan on Wed May 12, 2010 11:07 am, edited 1 time in total.
-
- Full Member
- Posts: 201
- Joined: Thu Nov 02, 2006 4:35 pm
- License Nr.: 5-532
- Location: Ghent, Belgium
- Contact:
DYNMAT and hessian matrix
Oh, that is not a problem, I was affraid you meant something different (symmetry operations to combine components of the hessian).
Last edited by Danny on Wed May 19, 2010 7:12 am, edited 1 time in total.