Hi use GeometryConstraints fore example %block GeometryConstraints cellside c cellangle alpha beta gam position from -1 to -10 rigid 1 2 center 1 2 0.0 0.0 1.0 stress 4 5 6 routine constr %endblock GeometryConstraints
On Sun, Jun 15, 2014 at 1:04 AM, xu yuehua <[email protected]> wrote: > > Hi,all: > > i want to relax the geometry of the cell, but i only need relax the c > cellside, and fix the a, b side. > > according to the manual; > > i rewrite the cinstr.f the code is > > *! and J.M.Soler, 1996-2006.* > *! * > *! Use of this software constitutes agreement with the full conditions* > *! given in the SIESTA license, as signed by all legitimate users.* > *!* > *c $Id: constr.f,v 1.6 2003/06/23 09:46:16 ordejon Exp $* > > * subroutine constr( cell, na, isa, amass, xa, stress, fa, ntcon )* > *c ****************************************************************** > *c User-written routine to implement specific geometric constraints,* > *c by orthogonalizing the forces and stress to undesired changes.* > *c Arguments:* > *c real*8 cell(3,3) : input lattice vectors (Bohr)* > *c integer na : input number of atoms* > *c integer isa(na) : input species indexes* > *c real*8 amass(na) : input atomic masses* > *c real*8 xa(3,na) : input atomic cartesian coordinates (Bohr)* > *c real*8 stress( 3,3) : input/output stress tensor (Ry/Bohr**3)* > *c real*8 fa(3,na) : input/output atomic forces (Ry/Bohr)* > *c integer ntcon : total number of positions constr. imposed* > *c ****************************************************************** > * implicit none* > * integer na, isa(na), ntcon* > * double precision amass(na), cell(3,3), fa(3,na),* > * . stress(3,3), xa(3,na)* > > *c Write here your problem-specific code.* > * stress(1,2) = 0.0d0* > * stress(1,3) = 0.0d0* > * stress(1,1) = 0.0d0* > > * stress(2,1) = 0.0d0* > * stress(2,2) = 0.0d0* > * stress(2,3) = 0.0d0* > > * stress(3,1) = 0.0d0* > * stress(3,2) = 0.0d0* > *c stress(3,3) = 0.0d0* > * return* > > * end* > > am i right? > > my question is in the fdf input file, Should i set the MD.VariableCell =T > > and also Set > %block GeometryConstraints > routine constr > %endblock GeometryConstraints > > > or set the latter only, let the MD.VariableCell =F > > i need your help > > thanks very much! > -- > unl chemistry department >
