Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
M
MeanFi
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Quantum Tinkerer
MeanFi
Merge requests
!4
Project 'qt/kwant-scf' was moved to 'qt/meanfi'. Please update any links and bookmarks that may still have the old path.
Interface refactoring
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Interface refactoring
interface-refactoring
into
main
Overview
66
Commits
140
Pipelines
46
Changes
19
Merged
Kostas Vilkelis
requested to merge
interface-refactoring
into
main
1 year ago
Overview
35
Commits
140
Pipelines
46
Changes
1
Expand
Find a design which is more intuitive and minimal.
0
0
Merge request reports
Compare
version 15
version 69
12febd75
10 months ago
version 68
8e0167ff
10 months ago
version 67
510fb6f9
10 months ago
version 66
1321ab08
10 months ago
version 65
8f586d38
10 months ago
version 64
1db16b76
10 months ago
version 63
25a30ca7
10 months ago
version 62
da9922cc
10 months ago
version 61
da5aac2d
10 months ago
version 60
0e9e296f
10 months ago
version 59
e76fec90
10 months ago
version 58
227060ba
10 months ago
version 57
b4127776
10 months ago
version 56
67fc8a89
10 months ago
version 55
d96f491f
10 months ago
version 54
d5ddbf6f
10 months ago
version 53
f70438d3
10 months ago
version 52
4aa6e00d
10 months ago
version 51
84423c33
10 months ago
version 50
424b2833
10 months ago
version 49
fd4701fd
11 months ago
version 48
c7c0707a
11 months ago
version 47
8af36681
11 months ago
version 46
20d2920f
11 months ago
version 45
6e7a22d1
11 months ago
version 44
44c230e0
11 months ago
version 43
56140857
11 months ago
version 42
1c0ad401
11 months ago
version 41
31a30bd7
11 months ago
version 40
02472c6f
11 months ago
version 39
c493e6fd
11 months ago
version 38
1c6d8695
11 months ago
version 37
03c11e4e
11 months ago
version 36
e45d9b30
11 months ago
version 35
0e64bd54
11 months ago
version 34
48268601
11 months ago
version 33
83b8ea46
11 months ago
version 32
a30cb997
11 months ago
version 31
517d494f
11 months ago
version 30
c24e300b
11 months ago
version 29
892ae505
11 months ago
version 28
e83c30fa
11 months ago
version 27
1c977970
11 months ago
version 26
09ea8411
11 months ago
version 25
4cbb5d2f
11 months ago
version 24
1b779fad
11 months ago
version 23
f58410e9
11 months ago
version 22
3fe2dbc7
11 months ago
version 21
3a6e6f29
11 months ago
version 20
96291ee7
11 months ago
version 19
498dd2a1
11 months ago
version 18
f4945090
11 months ago
version 17
2c754354
11 months ago
version 16
9c4bf187
11 months ago
version 15
72b05849
11 months ago
version 14
7c6d8ce0
11 months ago
version 13
99a589bc
11 months ago
version 12
ac594a1d
11 months ago
version 11
021a55ae
1 year ago
version 10
e1f85c03
1 year ago
version 9
39a621da
1 year ago
version 8
c1973998
1 year ago
version 7
ea4a272e
1 year ago
version 6
ca86a37e
1 year ago
version 5
cdba8420
1 year ago
version 4
aad6d6b1
1 year ago
version 3
8c18865f
1 year ago
version 2
4ac2691a
1 year ago
version 1
8e5b7d74
1 year ago
main (base)
and
version 16
latest version
b1533370
140 commits,
10 months ago
version 69
12febd75
138 commits,
10 months ago
version 68
8e0167ff
137 commits,
10 months ago
version 67
510fb6f9
134 commits,
10 months ago
version 66
1321ab08
133 commits,
10 months ago
version 65
8f586d38
131 commits,
10 months ago
version 64
1db16b76
130 commits,
10 months ago
version 63
25a30ca7
129 commits,
10 months ago
version 62
da9922cc
128 commits,
10 months ago
version 61
da5aac2d
127 commits,
10 months ago
version 60
0e9e296f
126 commits,
10 months ago
version 59
e76fec90
125 commits,
10 months ago
version 58
227060ba
124 commits,
10 months ago
version 57
b4127776
123 commits,
10 months ago
version 56
67fc8a89
122 commits,
10 months ago
version 55
d96f491f
121 commits,
10 months ago
version 54
d5ddbf6f
118 commits,
10 months ago
version 53
f70438d3
113 commits,
10 months ago
version 52
4aa6e00d
112 commits,
10 months ago
version 51
84423c33
111 commits,
10 months ago
version 50
424b2833
110 commits,
10 months ago
version 49
fd4701fd
109 commits,
11 months ago
version 48
c7c0707a
108 commits,
11 months ago
version 47
8af36681
107 commits,
11 months ago
version 46
20d2920f
102 commits,
11 months ago
version 45
6e7a22d1
101 commits,
11 months ago
version 44
44c230e0
100 commits,
11 months ago
version 43
56140857
91 commits,
11 months ago
version 42
1c0ad401
89 commits,
11 months ago
version 41
31a30bd7
76 commits,
11 months ago
version 40
02472c6f
75 commits,
11 months ago
version 39
c493e6fd
69 commits,
11 months ago
version 38
1c6d8695
68 commits,
11 months ago
version 37
03c11e4e
63 commits,
11 months ago
version 36
e45d9b30
62 commits,
11 months ago
version 35
0e64bd54
61 commits,
11 months ago
version 34
48268601
60 commits,
11 months ago
version 33
83b8ea46
59 commits,
11 months ago
version 32
a30cb997
58 commits,
11 months ago
version 31
517d494f
56 commits,
11 months ago
version 30
c24e300b
54 commits,
11 months ago
version 29
892ae505
53 commits,
11 months ago
version 28
e83c30fa
43 commits,
11 months ago
version 27
1c977970
42 commits,
11 months ago
version 26
09ea8411
41 commits,
11 months ago
version 25
4cbb5d2f
40 commits,
11 months ago
version 24
1b779fad
39 commits,
11 months ago
version 23
f58410e9
38 commits,
11 months ago
version 22
3fe2dbc7
36 commits,
11 months ago
version 21
3a6e6f29
34 commits,
11 months ago
version 20
96291ee7
33 commits,
11 months ago
version 19
498dd2a1
32 commits,
11 months ago
version 18
f4945090
31 commits,
11 months ago
version 17
2c754354
30 commits,
11 months ago
version 16
9c4bf187
26 commits,
11 months ago
version 15
72b05849
25 commits,
11 months ago
version 14
7c6d8ce0
22 commits,
11 months ago
version 13
99a589bc
21 commits,
11 months ago
version 12
ac594a1d
20 commits,
11 months ago
version 11
021a55ae
19 commits,
1 year ago
version 10
e1f85c03
18 commits,
1 year ago
version 9
39a621da
17 commits,
1 year ago
version 8
c1973998
15 commits,
1 year ago
version 7
ea4a272e
14 commits,
1 year ago
version 6
ca86a37e
11 commits,
1 year ago
version 5
cdba8420
10 commits,
1 year ago
version 4
aad6d6b1
9 commits,
1 year ago
version 3
8c18865f
8 commits,
1 year ago
version 2
4ac2691a
7 commits,
1 year ago
version 1
8e5b7d74
6 commits,
1 year ago
Show latest version
1 file
+
41
−
0
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
examples/dict_to_flat.py
0 → 100644
+
41
−
0
Options
# %%
import
numpy
as
np
from
codes.kwant_helper
import
utils
from
codes
import
kwant_examples
# %%
# Example hopping dictionary to use:
graphene_builder
,
int_builder
=
kwant_examples
.
graphene_extended_hubbard
()
tb_model
=
utils
.
builder2tb_model
(
graphene_builder
)
# %%
def
hop_dict_to_flat
(
hop_dict
):
sorted_vals
=
np
.
array
(
list
(
hop_dict
.
values
()))[
np
.
lexsort
(
np
.
array
(
list
(
hop_dict
.
keys
())).
T
)
]
flat
=
sorted_vals
[...,
*
np
.
triu_indices
(
sorted_vals
.
shape
[
-
1
])].
flatten
()
return
flat
def
flat_to_hop_dict
(
flat
,
shape
,
hop_dict_keys
):
matrix
=
np
.
zeros
(
shape
,
dtype
=
complex
)
matrix
[...,
*
np
.
triu_indices
(
shape
[
-
1
])]
=
flat
.
reshape
(
*
shape
[:
-
2
],
-
1
)
indices
=
np
.
arange
(
shape
[
-
1
])
diagonal
=
matrix
[...,
indices
,
indices
]
matrix
+=
np
.
moveaxis
(
matrix
[
-
1
::
-
1
],
-
1
,
-
2
).
conj
()
matrix
[...,
indices
,
indices
]
-=
diagonal
hop_dict_keys
=
np
.
array
(
list
(
hop_dict_keys
))
sorted_keys
=
hop_dict_keys
[
np
.
lexsort
(
hop_dict_keys
.
T
)]
hop_dict
=
dict
(
zip
(
map
(
tuple
,
sorted_keys
),
matrix
))
return
hop_dict
# %%
flat
=
hop_dict_to_flat
(
tb_model
)
shape
=
(
len
(
tb_model
.
keys
()),
*
list
(
tb_model
.
values
())[
0
].
shape
)
hop_dict
=
flat_to_hop_dict
(
flat
,
shape
,
tb_model
.
keys
())
# %%
Loading