lp:~linres/siesta/Linres

Created by sergio.illera and last modified

Linres implementation based on siesta trunk 587.

Get this branch:
bzr branch lp:~linres/siesta/Linres
Members of SIESTA-LINRES can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
SIESTA-LINRES
Project:
Siesta
Status:
Abandoned

Recent revisions

642. By Sergio Illera Developer <email address hidden>

dhinit: allocate-deallocate and set to zero the Daux variable, DTg and DSg
 solved problem with Daux dimensions

linresscf: changed output information if GAMMA true or false
           changed and added things in the readold loop (necessary for MPI...)

ddsmat: solved name mismatch with dDaux alloc-realloc

m_iodynmat:
-- write_dmlr: the fname creation is included in the if Node==0 loop
        The dm wite, added external loop with ix (spatial coordinates)

-- read_dmlr: in the dm read, added external ix loop

-- readdynmat: updated for MPI processes, share between Nodes the read dynmat and init varaibles

641. By Sergio Illera Developer <email address hidden>

added ddsmat.F and solved re_alloc mismatch names

640. By Sergio Illera Developer <email address hidden>

Added folder test in the main folder... we should realocate it...

639. By Sergio Illera Developer <email address hidden>

dhinit.F: changed the name of the varible of the kinetic contribution (dHMAT0).
Added the auxiliar and temporaly varaible Daux
Now, I hope it works correctly in paralel.

638. By Sergio Illera Developer <email address hidden>

linresscf.f: added argument in dhinit (nuo_l)
      added globalize the max error after the pulay mixing
             added ionode write for the error printing in the out
      added the buffer1 variable

dhinit.f: this subroutine was paralelized and changed into dhinit.F (this solve the mpi_compiler problems??)
 added the dHmat0 for paralel stuff

dhscf.f: changed the distribution of dRho between the Sequanetial and quadratic in the dynamat call. Now, it works for parallel purposes.

dvnloc.f: modified for paralelization. It works and tested the dHmat0 part.
 added the last part, dynamat calculation. Created new variable and loops for MPI processes and
 global sum.

ddsmat.f: added paralelization stuff.

delrhokp.F: seems that only works in Parallel if the Diag.ParallelOverK .true. is used
           in the fdf flag. Added call die() in delrho.F to check this condition.

ddnaefs.F: works perfect in parallel

read_options.F: deleted the call die if Nodes>1.

dynamat.f: changed the final dynamat distribution over nodes (if condition).
 Created dynmat_g variable that stores the global dynamat calculated IN the subrotuine, to add
 this contribution to the input dynamical matrix.

STILL WORKING in the PARALEL VERSION

637. By Sergio Illera Developer <email address hidden>

delrho.f: uncommented the delrhokp call

delrhokp.F: added ifdef MPI in the module usage of mpi_siesta
 added ifdef MPI for all the subroutine (for some compilers).
  From the point of view of the execution, in delrho there is a if that
        does the same.

636. By Sergio Illera Developer <email address hidden>

linresscf.f: set to 0 the dHmat variable in each iscf loop... (problems with some compilers?)

delrho.F: renamed from delrho.f ---> deƱrho.F

cellxc.F90: Rearrenged the if loop to choose the calculation (line 1173)
     stop condition for Linres and VdW calculation
            bug in sumP(:)=0.0_dp

Nullify the pointers in getGradDens

ggaxc.f: initialization to zero the LIBXC terms (problems with some compilers)

dhscf.f: set dVXCpot to zero

Makefile: reordered the delrhokp position

635. By Sergio Illera Developer <email address hidden>

Merge between Linres branches (Linres 634 and Linres-Parallel)

Miguel Pruneda delrho parallel and the old Linres branch

634. By Sergio Illera Developer <email address hidden>

*******************LIBXC**************************************
NSPIN==2 (spin Polarized fdf-option and PBE XC-potential)

cellxc.F90: some changes in the Vaux calculation..

There are slight differences between the unpolarized and polarized case but looks OK!!!

tested for BN, Si unit cells and the C60 molecule for PBE-libxc spin/no spin polarization and looks ok!!!

633. By Sergio Illera Developer <email address hidden>

rhooda.F: deleted some comments.

dhscf.F: bug in the dynamat calling for nspin=2. The dRho density (rho-rhoatm) was not well defined for nspin=2. Now, it enters to dynamat.F as sum of spins and difference. It looks ok!!

delrhok.f: found an inconsistency in the definition of rhoper which makes a bug for nspi==2. Rhoper has dimensions of RHOPER(MAXNH,NSPIN,3)

linresscf.f: blank lines...

At this point...LDA AND NSPIN==2 WORKS FOR BN TEST!!!!!!!!!!!!!!!!!!!!!!

*******************LIBXC**************************************
NSPIN==2 (spin Polarized fdf-option and PBE XC-potential)

ggaxc.f: changed the coefficient calculation needed for the PBE term.

cellxc.F90: PBE calculation term in the Vaux potential.

There are slight differences between the unpolarized and polarized case but looks OK!!!

tested for BN and Si unit cells

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers