Things to do

The Forth Bridge. Widely believed to be painted continuously since 1883.

This page shows a full list of our licensed developers, followed by a list of things they might like to develop. These people have their own developer mailing list casinodev which they can use to communicate with each other. Please ask if you wish to be added to or removed from the list.

List of developers

Neil Drummond
Pablo López Ríos
Mike Towler

Dario Alfè
Yasmine Al-Hamdani
Lucian Anton
Vinod Ashokan
Sam Azadi
Levi Barnes
Anouar Benali
Braulio Brito
Pascal Bugnion
Razvan Caracas
Mauro Causà
Kuang-Yu Chang
Marilu Chiofalo
Shibing Chu
Gareth Conduit
Mike Deible
Katharina Doblhoff-Dier
David Farrelly
Matthew Foulkes
Alexander Gaenko
Kevin Gasperich
Philip Hoggan
Kenta Hongo
Randy Hood
Cheng-Rong Hsing
Ryan Hunt
Antti-Pekka Hynninen
Fumihiro Imoto
Vladimir Konjkov
Martin Korth
Blazej Jaworowski
Ken Jordan
Wayne Joubert
Tim Lanfear
Jonathan Lloyd-Williams
Pierre-Francois Loos
Matthew Lyle
Ryo Maezono
Ilja Makkonen
Joao Marcelo Uchoa de Alencar
Nikolay Markovskiy
Bartomeu Monserrat-Sanchez
Elaheh Mostaani
Tim Mueller
Richard Needs
Matthew Norman
Roberto Peverati
Chris Pickard
Tom Poole
Pawel Potasz
Andrew Powell
Cameron Price
Zoltan Radnai
Carlos Reis
Yuhe Ren
Alexander Samoilov
Kristoffer Simula
James Spencer
Filippo Spiga
Graham Spink
Marcin Szyniszewski
Paul Tangney
Richard Taylor
Peter Townsend
John Trail
Cyrus Umrigar
Jose Valverde
Fan Wang
Yun-Peng Wang
Geehan Weerasinghe
Jason Wood
Nicholas Worth
Sheng Ying Yue
Andrea Zen
Ilya Zhukov
Dmitry Zvezhinsky

CASINO – major new features (more than one day to implement)

  • Implement varmin-linjas for complex wave functions.
  • Correlated sampling for VMC
  • Correlated sampling for DMC
  • CASINO on GPUs. (MDT, Filippo Spiga, Levi Barnes, Matthew Norman, Yuhe Ren, Wayne Joubert, Nikolay Markovskiy, Alexander Samoilov, Antti-Pekka Hynninen, Jason Wood.. all of whom have gone suspiciously quiet..)
  • Full DMC treatment of light nuclei (NDD, PLR?).
  • What is the status of Pablo’s modern things (general Jastrow, general backflow, orbital-dependent backflow, ..) which are still not the default or documented for the general user? How do they compare in speed/utility compared to the standard stuff (a lot slower, as I understand it) What is the overall intention here? We really need to have analytic derivatives with a fast evaluating Jastrow, no?
  • Deduce appropriate defaults for all CASINO input parameters, so that one day people can implement a ‘make the answer better button’ in a DFT code.
  • Fix crappy current implementation of reptation Monte Carlo.
  • Parallelization over twist angles (requires multiple independent DMC populations).
  • Fault tolerance for million core calculations
  • Chain wave function optimization and DMC jobs internally with runtype = “opt_dmc” or something of the sort (for long queue time problems).
  • Complex orbitals with Gaussian basis
  • Better ways of doing ‘high-throughput’ QMC.
  • Extend the format to allow DFT codes to report symmetry operations. There are a few places where this would be useful.
  • New expval for Scemama probability function. (Mauro Causà)
  • Better ways of doing forces? Forces for things other than Gaussians? Do the Gaussian basis forces still work? (no-one ever uses them).
  • CPP and forces still assume only s,p,d pseudopotential components. Fix to allow f,g as well.
  • Use error bar convergence criterion to conclude calcs rather than fixed
    number of moves. (But be careful not to bias error-bar estimates.) (MDT)
  • Allow electrons in spatially separated subsystems to be treated as distinct particles (e.g., in two widely separated molecules).
  • Charges, spins, magnetic moments, and associated fluctuations. (MDT)
  • Complete implementation of geminal wave functions by providing full documentation (including test results) and autotest examples.
  • Allow flexible use of precision throughout CASINO, instead of double precision almost everywhere.
  • Add a plane-wave backflow term. (NDD)
  • Allow re-representation of plane-wave p term in Jastrow using blip functions. (Ryan Hunt)
  • Write script/program for averaging over nuclear coordinates sampled from vibrational wave functions. (Yassmin Asiri)
  • Improve initial distribution of electrons (points routine) to use exponential distributions centred on nuclei.
  • Analytical derivatives of pjastrow terms w.r.t. parameters. (NDD)
  • Allow “hybrid” orbitals expanded in two different types of basis function, e.g., Gaussians plus blips.
  • Tidy up localized orbitals and incorporate the functionality into CASINO itself. (NDD)

CASINO – minor new features (one day or less to implement)

  • Better documentation of fact that excited states need to be done in (error trap if people try to do otherwise?).
  • Stop timer reinitialization of random number generator in the middle of DMC calculations (equil->stats) should only be done on genuine restart, otherwise it’s impossible to repeat calculations.
  • Are there anything else that can be put into shared memory?
  • Is it possible to re-implement MPI-IO to write config files? (thus avoiding the need to gather massive vectors on the master node – which  can blow the memory on e.g. Blue-Gene/Qs which have very small memory limits  per MPI process).
  • Allow FFT grid for not to be a product of powers of 2. Allow use of external FFT libraries if available. (NDD)
  • Automate generation if MPC requested and doesn’t exist.
  • Ability to write out molecular structure for visualizing molecule.
  • Add more autotest examples to cover features that aren’t currently included.
  • There are some compiler versions which crash when trying to run or compile perfectly standard Fortran95 (see e.g. recent whingeing about ifort in the  Development Log). Need a way to ban these versions at compile time so people don’t think it’s our fault.
  • Add EOS fitter utility. (NDD)
  • Improve the behaviour of reblock when it warns about outliers. (NDD)
  • Investigate preventing re-equilibration following twist-changes in which the occupancy does not change.
  • Simplify the application of electric fields via expot: take sign of electronic charge into account and include the electrostatic energy of the nuclei in the field.
  • Write utility for checking that CASINO source files adhere to the style guidelines in the CASINO manual. (NDD)
  • Hand-optimise code in pbackflow.f90.
  • Implement criterion for reporting the unboundedness of a trial wave function for small complexes of particles.
  • Improve handling of k-point sampling errors in twistanalysis. (David Thomas)
  • Allow initial Jastrow factors to be generated using an analytic approximation, e.g., fitting to the RPA-Kato form while preserving the charge density.

CASINO – fix infelicities

  • Is the Green’s function stuff done correctly for DMC-MD? What about Green’s function modifications and limiting schemes for particles of different mass?
  • Document or remove NN’s ‘vdW Jastrow function
  • Modify autotest so that it can do weird things like DMC-MD.
  • General fixing of FIXMEs in the CASINO source (‘grep FIXME *.f90‘)
  • Implementation of ‘movie‘ is very old and crappy. Delete or upgrade.
  • Issue with the parallel random number generator on large numbers of cores (seems to complain about some cores having the same seed – warning about this is currently turned off).
  • Finish improving the twistav_castep script. More error traps. Make continuation easier.

CASINO – documentation

  • Backflow time estimates (MDT)
  • Better documentation of momentum density in manual
  • Reformat the documentation of the Gaussian normalization stuff in  examples/generic/gauss_dfg/README for the manual (and extend discussion  to Cartesian Gaussians).
  • Description of what density/spin_density do for finite (atomic) density is not correct.  Add documentation of ‘rad_mom.dat‘ as well.
  • Add the “universal” scaling formulae for the CPU time and the behaviour of DMC error bars that was given in Needs et al.’s 2012 INCITE application to the manual. (NDD)

External codes

  • Make the treatment of unoccupied orbitals consistent across all of our interfaces to PW-DFT codes (see FAQ B10).
  • Extend the normalization/harmonic Gaussian documentation in  examples/generic/gauss_dfg/README to include the Cartesian –> harmonic conversions necessary to support various other codes.
  • CASINO only supports Cartesian –> harmonic Gaussian conversions for s,p,d.  Implement for f and g.
  • Allow new g function pseudopotential coeffs in CRYSTAL/CASINO interface.
  • MOLDEN interface (currently does not work for f and g functions;  or with codes other than Molpro?). Incorporate converter into CASINO  distribution and clarify resulting support for C4, Psi-4, and Molpro.  (Mike Deible)
  • Complete and document the examples/generic/gauss_dfg test for all codes besides CRYSTAL with all i/o put into the distribution. (MDT)
  • Implement GAMESS interface into GAMESS itself (and discard CASINO’s scrappy existing Perl converter). (Albert Defusco)
  • Fix GAMESS poor representation of pseudopotential Gaussian expansion  which requires separate lesser quality fits for Trail-Needs. (Albert Defusco)
  • Make PWSCF print out blip files rather than old-school
  • Rewrite runcrystal script in bash and integrate into CASINO architecture system. (MDT)
  • Write runcastep script like runpwscf integrated into CASINO architecture system.
  • Clarify status of TURBOMOLE interface. Assuming the currently provided code fragment doesn’t work, can we replace it with MOLDEN support?
  • Extend the range of Gaussian basis sets available on the CASINO pseudopotential site (using the Xu/Deible/Peterson/Jordan ones as starting  points). (MDT)
  • Does ADF interface (Slater functions) still work..?
  • Is it possible to get any of the PW codes like CASTEP/ABINIT to implement a blip converter internally like PWSCF does?

Computer/arch files issues

  • Try faster floating point operations on BG/Qs.
  • What to do if hardware doesn’t support asynchronous I/O? (separate communication thread etc?) Does this matter?

Leave a Reply