Electronic structure methods are mostly developed in self contained monolithic software distributions implementing a variety of features that have been developed over the last few decades. Currently most of these large codes contain routines with overlapping functionality and make use of non-standard data formats due to historical reasons, and as the state of the art in theory and computer hardware progresses, the complexity of these codes continue to grow separately, in a way that reduces their inter-operability with each new version. While this independent development model was certainly a successful one in the past, the current situation is far from ideal: new developers willing to contribute new ideas, who already face a steep learning curve due to the complexity of the existing software, are also required to become deeply involved with the development of a specific package. Furthermore, extension of their new development to other codes requires repetition of the same work for each independent package over and over, with very little academic and personal reward. The problem is widely recognized in the community as important yet it remains unsolved. Addressing it from various angles is among the goals of the E-CAM Center of Excellence, spawn by the CECAM community, and the Max Center of Excellence, both recently funded by EU. There are a few notable efforts to go beyond the traditional paradigm by producing communal software and libraries that are agnostic to the specific electronic structure code in which they are used. Examples include visualization, symmetry analysis, the computation and use of maximally-localized Wannier functions, libraries for exchange and correlation, and data structures and standards.
The fourth edition of the ESL coding workshop will focus on the theme of "drivers". In particular we will focus on: drivers for KS and drivers for linearised KS.
During the two-week coding workshop a team of about 10 to 15 coders, connected with several different electronic structure codes, will gather together to build examples of stand-alone KS and/or linearised KS solution drivers, agnostic of the specific data structure of the codes that would use them.
Organizers
Stefano de Gironcoli (SISSA), Fabiano Corsetti (Imperial College London). Local organizer: Ivan Girotto