Open Science with ASE: Core Tutorials

Instructors: Pietro Delugas, Adam Jackson, Lucy Whalley

General Information

This website contains the core tutorials for the Open Science with Atomic Simulation Environment workshop held in Daresbury Laboratory, UK. The website is based on a template developed by The Carpentries and is licensed under CC-BY 4.0. The pedagogical style of the course is also inspired by The Carpentries.

Preparation and pre-requisites

To participate in the tutorials at the Open Science with Atomic Simulation Environment workshop you will need an up-to-date web browser (we recommend Mozilla Firefox or Google Chrome) and access to the internet. The latter will be provided via the eduroam service. If you have problems accessing eduroam, please contact the workshop organisers and alternative arrangements will be made.

If you want to run this tutorial on your own computer (not required for the Daresbury workshop) then please see the Installation instructions (though please note that these are still in development and are only currently available for Mac/Linux systems).

This tutorial assumes that you have no prior knowledge of ASE; it is aimed at complete beginners. We do assume you have basic familiarity with Python, Jupyter Notebooks and Numpy. If you need a refresher on any of these tools we recommend the Programming with Python Software Carpentry course.

Jupyter Notebooks

Throughout the tutorial you will see references to Jupyter Notebook. However the large majority of content can be followed using either Jupyter Notebook, an IPython interpreter or a plain-vanilla Python interpreter.

Schedule

00:00 1. Setup How do I setup my computing environment for the Daresbury workshop tutorials?
00:10 2. What is ASE? How can ASE help me in my research?
In what way is the ASE code structured?
00:20 3. The Atoms Object How can I describe a molecule or crystal using the Atoms class?
How can I access and adjust Atoms information?
What built-in help is available from ASE?
00:40 4. Reading and Writing Atoms How do I read/write structure(s) from/to a file?
Which file formats does ASE support?
How do I visualise a sequence of structures?
01:20 5. Building and Manipulating Atoms How can I build molecules and bulk structures more efficiently?
How can I create supercells and point defects?
02:10 6. Built-in calculators How can I calculate standard properties using a built-in calculator?
How can I fit simple models to my calculations?
What is the best way to store and share property data?
02:55 7. File based calculators How can I calculate standard properties using a file-based calculator?
What happens behind the scenes in a file-based calculator?
When does ASE cache results from a calculation?
03:25 8. External calculators How can I calculate standard properties using an external calculator?
How can I calculate standard properties using a machine learned potential?
What is a convenient way to test for k-point convergence?
04:00 9. Calculations in parallel Is it possible to run calculations in parallel using ASE?
How can I store useful results from a script?
How can I measure the speed-up achieved?
04:45 10. Electronic structure How can I use DFT to produce an electronic bandstructure?
How can I use DFT to produce an electronic Density of States?
05:25 11. Molecular Dynamics How can I use molecular dynamics to evolve a system over time?
What do I use to track system properties over time?
Can I generate disordered structures using ASE?
06:00 12. Local optimisation How can I find kinetically stable structures?
Is it possible to apply constraints to my system?
How can I optimise other degrees of freedom beyond atom positions?
Can I generate amorphous structures using ASE?
06:50 13. What Next? Where can I find out more about ASE?
How can I ask for help or report problems?
Can I contribute to ASE?
How can I acknowledge ASE in my work?
06:55 14. Extra topics Why are socket calculators more computationally efficient?
06:55 Finish