Upload
andres
View
248
Download
0
Embed Size (px)
Citation preview
7/27/2019 ALPS Montreal
1/26
The ALPS ProjectOpen Source Software forQuantum Lattice Models
Simon Trebst, ETH Z!rich
The ALPS co!aboratio"
http://alps.comp"phys.org
7/27/2019 ALPS Montreal
2/26
The ALPS collaboration
University of Tokyo, Japan
Synge Todo
ETH Zrich, Switzerland
Fabien Alet
Prakash Dayal Mathias Krner
Guido Schmid
Simon Trebst
Matthias Troyer
Philipp Werner
Stefan Wessel
Universitt Marburg, Germany Reinhard Noack
Salvatore Manmana
Universitt Wrzburg, Germany
Martin Jstingmeier TU Braunschweig, Germany
Andreas Honecker
Universitt Bonn, Germany
Axel Grzesik
Universit de Toulouse, France Andreas Luchli
RWTH Aachen, Germany
Ulrich Schollwck
Ian McCulloch
TU Graz, Austria
Franz Michel
Hans-Gerd Evertz
Algorithms andLibraries forPhysicsSimulations
7/27/2019 ALPS Montreal
3/26
The ALPS project open source libraries and simulation codes for strongly
correlated quantum systems
Quantum Monte Carlo exact diagonalization
DMRG
Motivation established algorithms
increased demand for reliable simulations fromtheorists and experimentalists
7/27/2019 ALPS Montreal
4/26
Strongly correlated systems
compare microscopic models to experiments
0
2
4
6
8
10
12
0 200 400 600
experiment
simulation!
(10"
5c
m3/molC
u)
T (K)
SrCu2O
3
J'/kB= 929 K
J/kB
= 1904 K
simulation
7/27/2019 ALPS Montreal
5/26
Strongly correlated systems
BEC of ultra"cold atoms in optical lattices
quickly test theoretical ideas
0 5 10 15 20
r / a
0.0
0.2
0.4
0.6
0.8
1.0
1.2
n(r
)
0.0
0.1
0.2
0.3
!local
(r
)
talk H28.004 by Stefan Wessel
7/27/2019 ALPS Montreal
6/26
Simulation of
quantum lattice models The status quo
individual codes
model"speci#c implementations growing complexity of methods
ALPS
community codes generic implementations common libraries simplify code development common #le formats
7/27/2019 ALPS Montreal
7/26
Modern technologies
!Starting late"allows us to use
generic programming in C++fast & $exible codes
standard C++libraries
MPI and OpenMP for parallelization XML / XSLT for #le processing
7/27/2019 ALPS Montreal
8/26
The ALPS sources
schedulerlattice model observablesdomain speci#clibraries
QMC ED DMRGapplications ...
numerics random ublas IETL
C / Fortran MPILAPACKBLAS
general C++ XML/XSLTgraph serialization
7/27/2019 ALPS Montreal
9/26
The ALPS lattice libraryA lattice
7/27/2019 ALPS Montreal
10/26
A model
-h*Sz
7/27/2019 ALPS Montreal
11/26
Simulations with ALPS
Lattice
...
Model
-h*Sz
7/27/2019 ALPS Montreal
12/26
Open source development
of ALPS
Collaborative development Why open source codes?
License discussion
Funding situation
7/27/2019 ALPS Montreal
13/26
The History
the dark ag#
QMC, basic libraries%94
loop code%97
%02
SSE%01
%03
ALPS
%04
%94DMRG
7/27/2019 ALPS Montreal
14/26
Current applications Quantum Monte Carlo
stochastic series expansions &SSE', F. Alet, M. Troyer
loop code for spin systems, S. Todo continuous time worm code, S. Trebst, M. Troyer
Exact diagonalization
full and sparse,A. Honecker, A. L(uchli, M. Troyer
DMRG
single particle, S. Manmana, R. Noack, U. Schollw)ck
interacting particles, I. McCulloch
7/27/2019 ALPS Montreal
15/26
Collaborative development
Some 15 developers, mostly PhDs.
technical infrastructure source code control system &CVS'
mailing lists
web page semi"annual workshops
Austria, France, Germany, Japan, Netherlands and Switzerland
7/27/2019 ALPS Montreal
16/26
Developer workshops
Developers meet at semi"annual workshops
review of #nished projects discussion of current developments
road"map for new developmentsin the next 6 months
Workshop are essential to coordinate anddrive the development.
7/27/2019 ALPS Montreal
17/26
Open source codes Why open source?
community pro#ts from improvements byindividual developers
e.g. adding disorder to models
simplify code development
build on lattice, model, ... libraries
non"experts can use sophisticated algorithms
reproducibility of published scienti#c results
7/27/2019 ALPS Montreal
18/26
Open source codes
Why should a researcher publish his codes? start new collaborations / networks
name recognition
citations peer pressure to contribute
The !cite me"$license
scienti#c returnopen sources
7/27/2019 ALPS Montreal
19/26
The *cite me+"license
Applications codes
free for non"commercial applications
based on GNU public license
citation requirements
Modi$cations / improvements ofcodes should be integrated into ALPS
not obligatory to publish
7/27/2019 ALPS Montreal
20/26
The *cite me+"license
Applications codes
free for non"commercial applications
based on GNU public license
citation requirements
Library codes less restrictive
partially available under a free license
7/27/2019 ALPS Montreal
21/26
User workshops
Oak Ridge %03
part of workshop on Wang"Landau sampling
Lugano %04
general lectures on numerical methods
hands"on tutorials of applications
direct feedback from users
workshops/tutorials set deadlines for developments
7/27/2019 ALPS Montreal
22/26
Become a user yourself!http://alps.comp"phys.org
7/27/2019 ALPS Montreal
23/26
Funding situation
Software development classi#ed as
infrastructure project no funding by research grants
combination with research projects no professional code developers
7/27/2019 ALPS Montreal
24/26
Funding situation Funding sources for infrastructure
computer centers,
Swiss National Supercomputer CenterORNL
companies?
think big: group grantcan fund a software developer
open source development helpful
Calcolo Scientifico
Swiss Center for
Centro Svizzero di
Scientific Computing
CSC
S
SCSC
7/27/2019 ALPS Montreal
25/26
Experiences
Advantages of open source development !
improved code design
more $exibility
code review by fellow developers
new collaborations, joint research projects !
new contacts to experimental groups !
more work "
7/27/2019 ALPS Montreal
26/26
ALPS workshop %04Lugano, September 26 "October 1
Classical Monte Carlo
Spin DynamicsQuantum Monte CarloExact diagonalizationDMRG
F. Alet
G. BrownH."G. EvertzC. KollathA. L(uchliI. McCulloch
R. Noack
T. SchulthessS. TodoS. TrebstShan"Ho Tsai
Invited speakers Hands$on tutorials