A file containing information on the q-point grid is written by ph.x
and read by q2r.x, thus making the process less clumsy
The phonon code does not restart automatically any longer unless instructed
to do so by setting input variable "recover"
Misc cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2039 c92efa57-630b-4861-b058-cf58834340f0
- core charge, same module between CPV and FPMD
- Makefile: added dependency between "mods" and "libiotk"
- Makefile: fix for dependencies in PH and Gamma when __NEWPUNCH is defined
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1995 c92efa57-630b-4861-b058-cf58834340f0
all files open by seqopn.f90 and diropn.f90 in the TMP_DIR have the
general form "prefix"."extension" where extension is the only part of
the filename passed as an argument. This should avoid conflicts between
different jobs running at the same time and sharing the same TMP_DIR
(provided they have different prefixes ...)
All examples (from 1 to 26) give the same output as before on my pc.
Please let me know if you notice unexpected behaviours.
stefano
PS: example26 apparently does nothing (even giving the command run_example 7)..
As it uses cp.x which does not use seqopn/diropn routines this behaviour
cannot be due to the present changes.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1963 c92efa57-630b-4861-b058-cf58834340f0
exchange stuff.
These features can be obtained by compiling with -DEXX added to DFLAGS
in make.sys
***** DO NOT USE FOR ANY PRODUCTION RUN. *****
Stefano and Antonio
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1883 c92efa57-630b-4861-b058-cf58834340f0
No need to symmetrize it once again when it is read.
Note that the symmetrization in solve_e is now applied to Delta rho,
not to Delta Vscf. This is consistent with the behavior of solve_linter
Some cleanup in solve_e and solve_linter
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1685 c92efa57-630b-4861-b058-cf58834340f0
Array int3 (used in US case) was incorrectly dimensioned as int3(...,3,...)
instead of int3(...,max_irr_dim,...).
This generated incorrect results in an US phonon calculation when irreducible
reresentations with dimension larger than 3 (currently max_irr_dim is 4)
were found.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1554 c92efa57-630b-4861-b058-cf58834340f0
noncolinear and spin-orbit cases. pwnc.x is no more needed and the
directory PWNC and all its files will be removed.
Step one: added to PW the noncolinear routines that have not been
merged, changes on all the Makefiles.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1537 c92efa57-630b-4861-b058-cf58834340f0
- Few more functionals has been added to file more_functionals.f90
since in PW BLYP/LSDA were not implemented .
In the same file, temporary, are stored old CP90 subroutines
for testing purpose ( in CP functionals were vectorized!! ).
The small program PP/xctest.f90 can be used to make a comparative
test between new and old routines, in case someone suspect a problem
there.
- buon anno!
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1533 c92efa57-630b-4861-b058-cf58834340f0
in particular (modenum.ne.0) stands for iswitch = -4 now: is it OK?
unused show_memory routine also removed
documentation updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1503 c92efa57-630b-4861-b058-cf58834340f0
(to be tested). Makefile and ChangeLog cleanup
Per favore scrivete qualcosa nel ChangeLog quando fate qualcosa
e verificate che tutto compile quando aggiungete roba - PG
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1413 c92efa57-630b-4861-b058-cf58834340f0
- iotk_scan in iotk_module had a mixed up 'intent' statement.
- sun ultra fire 3 compiler warnings
- cleanup in filename length (brought to 256)
- cleanup in include files
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1399 c92efa57-630b-4861-b058-cf58834340f0
added example for phonon DOS; version number updated to 2.1 (PG)
Please start testing and debugging the next version, i.e., this one.
Note that reference data have to be updated for all examples.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1039 c92efa57-630b-4861-b058-cf58834340f0
is now within ph.x possible.
New input variables:
lnscf: if .true. the nscf and phonon run are done in one single run
ldisp: if .true. calculation of dyn. matrices for dispersion
nq1, nq2, nq3: q-point mesh
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1017 c92efa57-630b-4861-b058-cf58834340f0
1) f_defs.h for definitions to be included in FORTRAN files ONLY
2) c_defs.h for definitions to be included in C files ONLY
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1012 c92efa57-630b-4861-b058-cf58834340f0
in one step with pw.
A new calculation is possible called 'dispersion'
in the phonon card new input parameters are:
nq1, nq2, nq3 : number of q points in the direction
tr2_ph : threshold for the phonon calculation (see also INPUT_PH)
Therefore tr2_ph has been moved from phcom.f90 to Module disp in pwcom.f90
UP TO NOW ONLY THE Q POINTS FOR THE DYN. MATRICES ARE CALCULATED AND PRINTED.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@944 c92efa57-630b-4861-b058-cf58834340f0
Note that lqx => lmaxq for consistency with other names
(those ending in x are static dimensioning)
Beware unexpected side effects (PG)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@933 c92efa57-630b-4861-b058-cf58834340f0
zstar, epsilon and dynamical matrices written with
8 digits only (it should not make any significant difference
and it should be easier to spot differences in dynmat files
if 0.123456789E-10 is treated as zero)
symmetrization is applied already to drho (not anymore to dvscf)
(SdG)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@930 c92efa57-630b-4861-b058-cf58834340f0
new module uspp_param, shared between PW and CP (in file Modules/uspp.f90)
The flag newpseudo is no longer used to decide whether states with oc=0 are
bound or not: for those states, and only for the old RRKJ format, oc is set
to a negative value, and this signals that they are not bound. Not elegant
but simpler than it used to be. The converter to UPF format did not include
those states anyway. Beware unexpected side effects!
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@914 c92efa57-630b-4861-b058-cf58834340f0
is now the default. Moreover, if the wf_collect flag (in the control namelist)
is true, it collects all wave functions and store them in the same file.
The phonon and postprocessing codes can handle this new .save file.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@864 c92efa57-630b-4861-b058-cf58834340f0
PW: nqfm => nqfx, some us variables and aainit moved to Modules/uspp.f90 (new)
CP: lx, lqx => lqmax, lix => lmaxx+1, variables moved, aainit not yet merged
invmat moved to flib/ and merged with invmat3 of CP/FPMD,
rndm and ylmr2 moved to flib/ in rranf.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@793 c92efa57-630b-4861-b058-cf58834340f0
and linked by all codes.
Now in case of severe error, errore writes its message also to the file 'CRASH'
that is closed before aborting, this to avoid information loss in those
systems that do not flush open streams, when the code is stopped through
a call to MPI_ABORT
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@750 c92efa57-630b-4861-b058-cf58834340f0
This required a deep modification of the parallelism in PWscf:
there are two new communicators (intra_image_comm and inter_image_comm) and the
existing "pool" communicators (intra_pool_comm and inter_pool_comm) are now vectors
of length given by the number of parallel images. #ifdef __PARA is no longer
needed because all "parallel" variables are always initialized for a serial run
and all parallel routines are, in the case of a serial run, dummy routines.
The wrappers to MPI routines used only by PWscf are in the PW/para.f90 file.
The others (mp_***) are in the Modules/mp.f90. All explicit referencies to mpif.h
should be replaced by an "USE parallel_include" (in a serial run parallel_include
is simply a dummy module).
2) The extrapolation of both potential and wavefunctions has been rewritten in
order to be smarter than before: on the basis of the required extrapolation
order, on the basis of the history and on the basis of which files are really
present on the disk, the algorithm chooses the extrapolation order.
All the algorithms in which ions are moved can use the extrapolation.
These are both unstable features: I need the help of everybody to test them.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@742 c92efa57-630b-4861-b058-cf58834340f0
- basic cell and ionic variables moved frpm pwcom to
cell_base and ions_base .
cell_base modules and ions_base modules should be initialized
through the use of cell_base_init and ions_base_init, this after
having read the namelists and the cards .
IN THE FUTURE NONE OF THE VARIABLES IN THE BASIC MODULES SHOULD
BE SET IN THE MAIN CODES, BUT THROUGH A CALL TO SOME INIT
FUNCTIONS CONTAINED IN THE BASIC MODULE ITSELF.
THE IDEA IS THAT THE BASIC VARIABLES SHOULD BE USED AS
READ-ONLY. UNFORTUNATELY IN F90 THERE IS NO POSSIBILITY
TO SET A READ ONLY ATTRIBUTE.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@702 c92efa57-630b-4861-b058-cf58834340f0
All kinds ionic dynamics are done by a single cpu (see move_ions.f90).
After the ions are moved the new positions (and other information) are
broadcasted to all other cpus.
C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@701 c92efa57-630b-4861-b058-cf58834340f0
order to allow to specify how to fill starting ns occupation
matrices. Useful when the default choice take the wrong
(or not desired) path.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@598 c92efa57-630b-4861-b058-cf58834340f0
as requested by Tone - examples updated with the exception of example12
(please verify if they are ok). Version number updated to 2.0 .
configure => configure.old, configure.new => configure
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@553 c92efa57-630b-4861-b058-cf58834340f0
correct place (kinds); module "varie" replaced by "control_flags" (not
yet in pwcom, though) - many many files changed.
64-bit cpus (Opteron, maybe Itanium) should now work if __LINUX64 is defined
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@513 c92efa57-630b-4861-b058-cf58834340f0
minus_q and related variables where not set properly: minus_q was always
set .false. while instead it may be .true. for some value of q (gamma
for instance).
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@503 c92efa57-630b-4861-b058-cf58834340f0
- variables in module pwcom/varie moved to Modules/control_flags
- module PW/format moved to Modules/format
- in module PW/supercell added workaround for AUTOMATIC variable and
AIX compilers
- PH Makefile added rbecmod.o
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@468 c92efa57-630b-4861-b058-cf58834340f0
- module filnam in pwcom moved to io_files module
- module units in pwcom moved to io_file
From now on, all file names and their unit and attributes (i.e. reclen)
should be defined in Modules/io_files.f90
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@382 c92efa57-630b-4861-b058-cf58834340f0
- ^M removed from pseudo files
- wavefunctions arrais moved to module
wavefunctions_module, common to all codes
this is required to reduce duplicated subroutine
- new lapack subroutine, called from PWCOND,
added to lib/lapack.f lib/lapack_ibm.f
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@381 c92efa57-630b-4861-b058-cf58834340f0
over processors; various calls to setv removed
Second occurrence of wsinit and wsweight removed
Unit number cleanup (solves problem with conflicting units)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@329 c92efa57-630b-4861-b058-cf58834340f0
contributed by Adriano Mosca Conte,
added to the repository.
The non collinear code has required
a new module "wavefunctions" containing
"psic" and "evc", that no longer belong
to pwcom.
use: cvs update -d
there's a new example (example13), that is not
yet complete, I'm waiting for the appropriate
pseudopotential from Adriano
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@322 c92efa57-630b-4861-b058-cf58834340f0
variable wf_collect added to the control namelist.
This logical variable will be used in pw to
collect wave funcions at the end of a parallel run.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@295 c92efa57-630b-4861-b058-cf58834340f0
An US term in the calculation of deltaV * psi_v needed in
elphon.f90 was missing. This was giving wrong number in version
1.2.0, while US case was not implemented in previous versions.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@275 c92efa57-630b-4861-b058-cf58834340f0
The unit cell can be given using crystallographic parameters a, b, c,
(all in A), cosab cosac, cosbc . Misc. cleanup
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@263 c92efa57-630b-4861-b058-cf58834340f0
Added the possibility to subtract the dipole field
for slab or molecule calculation.
(See PRB 59, 12 301 (1999) and PRB 63, 205426 (2001).)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@252 c92efa57-630b-4861-b058-cf58834340f0
and used by all codes,
as common latgen it has been used the one contained in CPV,
sice this version solve some problems related to left-handed cell
new common module ions_base with ionic basic variables
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@247 c92efa57-630b-4861-b058-cf58834340f0
- ifdef __PARA removed from the main subroutine of PW, Gamma, D3, PP, PH
now startup is called both for serial and parallel codes.
- cfts_3 included in fft_scalar ( tested for __AIX )
- module pencils in serial executions is no more needed
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@189 c92efa57-630b-4861-b058-cf58834340f0
Make.ibmsp modified to work without modifications for all codes
Misc minor changes. Initialization to zero added to regterg as well
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@179 c92efa57-630b-4861-b058-cf58834340f0
..... fixed by PG few minutes ago!
PW interfaced to Module/fft_scalar.f90 when __FFTW is defined.
Extensive tests of parallel and serial execution for all codes,
has been done on ALPHA system.
In pw_examples/example6 found a problem in parallel execution with 4 procs,
related to stdin (I've got an end of file on stdin), no problem
for the serial execution.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@176 c92efa57-630b-4861-b058-cf58834340f0
Calls to allocate_fft, ggen moved out of setup.f90
Minor change in mix_rho to reduce memory use
CPV: Exch_corr: gradr not deallocated in some cases
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@175 c92efa57-630b-4861-b058-cf58834340f0
(extensive changes to wfcinit, rotate_wfc, ccginitg).
Residual wrong dimension et(nbndx,nkstot) removed.
Common efield_0 in PW renamed extfield to avoid name
clash with common efield in PH (PGI compiler)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@148 c92efa57-630b-4861-b058-cf58834340f0
cegterg, regterg: use GEMM instead of GEMV, do not require
any longer evc, et to be dimensioned nbndx (et is now
dimensioned (nbnd,nkstot)) - misc. cleanup
Il calcolo di (H-eS)*psi ('update') nella diagonalizzazione iterativa
prendeva un tempo esagerato. L'ho modificata in modo da usare prodotti
matrice-matrice su tutti gli psi invece che matrice-vettore su ogni
psi, se piu' di 1/4 dei vettori non e' a convergenza. La cosa e' fatta
a naso e richiede ulteriori di prove, ma mi sembra che apporti dei
miglioramenti.
In TODO ho messo una lista di cose da fare.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@145 c92efa57-630b-4861-b058-cf58834340f0
cella unitaria in chdens (utile solo per molecole isolate).
Introdotta la possibilita' di aggiungere un potenziale a forma di dente
di sega al potenziale degli ioni per simulare un campo elettrico
finito. (by J. Tobik)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@141 c92efa57-630b-4861-b058-cf58834340f0