Hi Pablo,

That should work, but notice that if you wnat to run in parallel then constr.f 
must
be MPI-aware, ¿is it?. Let me doubt because in that case it would be called constr.F90
and contain stuff such as,
#ifdef MPI
    bla, bla,
#endif

Cheers,

Roberto

On 20/05/21 05:40, Pablo Álvarez Rodríguez wrote:
Dear SIESTA users.
I am currently struggling to make constraints to certain atom blocks in SIESTA. For so, I use *constr.f* modified by nullifying the atomic forces by including the code line :

*fa(1:3,1:i)=0*
*
*
where *i* is the number of atoms I want to constrain. Afterwards I compile the new siesta file with the modified constr.f in order to use it, but it seems it doesn't work properly, as atoms still suffer movements even after constraining them with constr.f.
I don't really understand how *constr.f* works as I may forget something.
Do I need to include anything more in order to make a working constraint, like for example, rewrite the coordinates with xa?

--

Yours Sincerely

*Pablo Álvarez Rodríguez.*
.

-- 
SIESTA is supported by the Spanish Research Agency (AEI) and by the European 
H2020 MaX Centre of Excellence (http://www.max-centre.eu/)

Responder a