Skip to content

Commit 519dea6

Browse files
committed
switch to jupyter book
1 parent 3bda75b commit 519dea6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+2390
-1233
lines changed

.gitattributes

-1
Original file line numberDiff line numberDiff line change
@@ -1 +0,0 @@
1-
*.ipynb filter=nb-filters

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ auto
2424

2525
# Cached output
2626
.nb_output_cache
27+
_build
2728

2829
# Misc
2930
.DS_Store

.gitlab-ci.yml

+6-59
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,23 @@
11
image: topocourse/topocourse
22
stages:
3-
- execute
43
- build
54
- deploy
65

76

87
execute_ipynbs:
9-
stage: execute
8+
stage: build
109
before_script:
11-
- pip install ruamel.yaml git+https://gitlab.kwant-project.org/anton-akhmerov/publist.git
10+
- pip install ruamel.yaml git+https://gitlab.kwant-project.org/anton-akhmerov/publist.git jupyter-book
1211
script:
13-
- export PYTHONPATH=$PYTHONPATH:${PWD}/code
14-
- export OPENBLAS_NUM_THREADS=1 OMP_NUM_THREADS=1 MKL_NUM_THREADS=1 MKL_DYNAMIC=FALSE
15-
- export MARKDOWN=generated/markdown
16-
- mkdir -p $MARKDOWN
17-
- cp -r src/* $MARKDOWN
18-
- python scripts/preprocess_markdown.py
19-
- export WITH_OUTPUT=generated/with_output
20-
- cp -r data $WITH_OUTPUT
21-
- cp -r $MARKDOWN/* $WITH_OUTPUT
22-
- find $WITH_OUTPUT -name '*.md' | parallel --delay 3 --jobs 32 notedown -o --run --timeout -1 --match fenced
23-
- rm -rf $WITH_OUTPUT/data
12+
- jupyter-book build src
2413
artifacts:
2514
paths:
26-
- generated/with_output
15+
- src/_build/html
2716
expire_in: 7d
2817

2918

3019
mirror to github:
31-
stage: execute
20+
stage: build
3221
allow_failure: true
3322
only:
3423
- branches@qt/topocm
@@ -47,55 +36,13 @@ mirror to github:
4736
- for REPO in $REPOS; do git push --mirror $REPO; done
4837

4938

50-
edx archive:
51-
stage: build
52-
before_script:
53-
- pip install ruamel.yaml
54-
script: ./scripts/converter.py ./generated/with_output
55-
artifacts:
56-
paths:
57-
- generated/import_to_edx.tar.gz
58-
- generated/html/edx
59-
expire_in: 7d
60-
61-
62-
pelican website:
63-
stage: build
64-
variables:
65-
DEST: "generated/html"
66-
before_script:
67-
- pip install ruamel.yaml
68-
script:
69-
- python scripts/converter_pelican.py
70-
- pelican -o $DEST/ -s website_assets/pelicanconf.py generated/pelican_content
71-
artifacts:
72-
paths:
73-
- generated/html
74-
expire_in: 30d
75-
76-
77-
ocw website:
78-
stage: build
79-
before_script:
80-
- pip install ruamel.yaml
81-
script:
82-
- python scripts/converter_ocw.py
83-
- mv website_assets/iframes.txt generated/html/ocw
84-
artifacts:
85-
paths:
86-
- generated/html/ocw
87-
expire_in: 1d
88-
89-
9039
.upload_website: &upload_website
9140
stage: deploy
9241
before_script:
9342
- mkdir -p ~/.ssh && ssh-keyscan tnw-tn1.tudelft.net >> ~/.ssh/known_hosts
9443
- echo $WEBSITE_KEY | base64 -d > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
9544
script:
96-
- cp -r generated/with_output generated/html/notebooks
97-
- "rsync -ravz --delete generated/html/* [email protected]:"
98-
- "rsync -ravz --delete website_assets/static [email protected]:"
45+
- "rsync -ravz src/_build/html/* [email protected]:"
9946
after_script:
10047
- rm -rf ~/.ssh
10148

src/_config.yml

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
title: 'Topology in condensed matter: tying quantum knots'
2+
author: Topology course team
3+
execute:
4+
execute_notebooks: cache
5+
timeout: -1
6+
stderr_output: remove-warn
7+
sphinx:
8+
config:
9+
html_js_files:
10+
- https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js
11+
- - https://cdn.bokeh.org/bokeh/release/bokeh-2.2.3.min.js
12+
- crossorigin: anonymous
13+
- - https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.2.3.min.js
14+
- crossorigin: anonymous
15+
- - https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.2.3.min.js
16+
- crossorigin: anonymous
17+
- - https://unpkg.com/@holoviz/[email protected]/dist/panel.min.js
18+
- crossorigin: anonymous

src/_toc.yml

+69
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
format: jb-book
2+
root: syllabus
3+
parts:
4+
- caption: Before you begin
5+
chapters:
6+
- file: w0_background/intro
7+
- file: w0_background/band_structures
8+
- caption: Topology in toy models
9+
chapters:
10+
- file: w1_topointro/0d
11+
- file: w1_topointro/1D
12+
- file: w1_topointro/w1_assignments
13+
- caption: Majoranas I
14+
chapters:
15+
- file: w2_majorana/nanowire
16+
- file: w2_majorana/signatures
17+
- file: w2_majorana/braiding
18+
- file: w2_majorana/w2_assignments
19+
- caption: 'More parameters: charge pumping'
20+
chapters:
21+
- file: w3_pump_QHE/pumps
22+
- file: w3_pump_QHE/Laughlinargument
23+
- file: w3_pump_QHE/QHEedgestates
24+
- file: w3_pump_QHE/w3_assignments
25+
- caption: Chern insulators
26+
chapters:
27+
- file: w4_haldane/QHE_lattice
28+
- file: w4_haldane/haldane_model
29+
- file: w4_haldane/w4_assignments
30+
- caption: Quantum spin Hall effect
31+
chapters:
32+
- file: w5_qshe/fermion_parity_pump
33+
- file: w5_qshe/qshe_experiments
34+
- file: w5_qshe/w5_assignments
35+
- caption: Three-dimensional topological insulators
36+
chapters:
37+
- file: w6_3dti/bhz
38+
- file: w6_3dti/3dti_signatures
39+
- file: w6_3dti/w6_assignments
40+
- caption: Topological defects
41+
chapters:
42+
- file: w7_defects/ti_majoranas
43+
- file: w7_defects/crystalline_defects
44+
- file: w7_defects/w7_assignments
45+
- caption: General approach to topological classification
46+
chapters:
47+
- file: w8_general/classification
48+
- file: w8_general/invariants
49+
- file: w8_general/w8_assignments
50+
- caption: Anderson localization and topology
51+
chapters:
52+
- file: w9_disorder/scaling
53+
- file: w9_disorder/topoflow
54+
- file: w9_disorder/w9_assignments
55+
- caption: Extensions of classification I
56+
chapters:
57+
- file: w10_extensions/gapless
58+
- file: w10_extensions/mechanics
59+
- file: w10_extensions/w10_assignments
60+
- caption: Extensions of classification II
61+
chapters:
62+
- file: w11_extensions2/floquet
63+
- file: w11_extensions2/cti
64+
- file: w11_extensions2/w11_assignments
65+
- caption: Beyond single-particle physics
66+
chapters:
67+
- file: w12_manybody/fqhe
68+
- file: w12_manybody/topoorder
69+
- file: w12_manybody/w12_assignments

src/code

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../code

src/syllabus.md.j2 src/syllabus.md

+20-10
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,25 @@
1-
# Syllabus
1+
---
2+
jupytext:
3+
text_representation:
4+
extension: .md
5+
format_name: myst
6+
format_version: 0.13
7+
jupytext_version: 1.11.4
8+
kernelspec:
9+
display_name: Python 3
10+
language: python
11+
name: python3
12+
---
13+
14+
# Introduction
15+
16+
+++
217

3-
{% for chapter in chapters -%}
4-
* **{{chapter.title}}**
5-
{% for section in chapter.sections %} * [{{section.title}}]({{section.location}}.ipynb)
6-
{% endfor -%}
7-
{%- endfor %}
818
## Course structure
919

1020
Each section consists of several relatively self-contained topics, each introduced and summarized by an expert.
1121

12-
## Current course team
22+
### Current course team
1323

1424
**Anton Akhmerov** is an assistant professor in Kavli Institute of Nanoscience of Delft University of Technology and QuTech.
1525

@@ -19,7 +29,7 @@ Each section consists of several relatively self-contained topics, each introduc
1929

2030
**Bas Nijholt, Irfan Muhammad, Tómas Örn Rosdahl** are PhD students working in Kavli Institute for Nanoscience at TU Delft supervised by Anton Akhmerov.
2131

22-
## Other course developers
32+
### Other course developers
2333

2434
The initial verison of the course was created by:
2535
* Anton Akhmerov
@@ -28,7 +38,7 @@ The initial verison of the course was created by:
2838
* Sebastian Rubbert
2939
* Rafał Skolasiński
3040

31-
## Acknowledgements
41+
### Acknowledgements
3242

3343
When working on the course, we greatly benefitted from support of
3444

@@ -48,7 +58,7 @@ For the support with implementing the technical aspects of the course we thank
4858

4959
Finally, we thank all the external speakers for contributing the videos for the course.
5060

51-
## License
61+
### License
5262

5363
Unless otherwise specified the **Course Materials** of TU
5464
Delft TOPOCMx are Copyright [Delft University of Technology](http://www.tudelft.nl/en/) and are licensed under

0 commit comments

Comments
 (0)