From 1b738285b029211f2535b1dbd973455f712219f6 Mon Sep 17 00:00:00 2001 From: Bas Nijholt <basnijholt@gmail.com> Date: Wed, 2 Oct 2019 14:26:02 +0200 Subject: [PATCH] add bib related files --- create_bib_file.py | 141 ++++++++++++++++++++ not_on_crossref.bib | 85 ++++++++++++ paper.bib | 312 ++++++++++++++++++++++---------------------- paper.yaml | 16 +++ 4 files changed, 400 insertions(+), 154 deletions(-) create mode 100644 create_bib_file.py create mode 100644 not_on_crossref.bib create mode 100644 paper.yaml diff --git a/create_bib_file.py b/create_bib_file.py new file mode 100644 index 0000000..7010c20 --- /dev/null +++ b/create_bib_file.py @@ -0,0 +1,141 @@ +# Adapted from https://gitlab.kwant-project.org/qt/basnijholt/thesis-bas-nijholt/blob/master/create_bib_file.py + +import functools +import glob +import os +from concurrent.futures import ThreadPoolExecutor + +import requests +import yaml + + +def replace_key(key, bib_entry): + bib_type, *_ = bib_entry.split("{") + _, *rest = bib_entry.split(",") + rest = ",".join(rest) + # Now only modify `rest` because we don't want to touch the key. + + # XXX: I am not sure whether these substitutions are needed. + # the problem seemed to be the utf-8 `requests.get` encoding. + to_replace = [("ö", r"\"{o}"), ("ü", r"\"{u}"), ("ë", r"\"{e}"), ("ï", r"\"{i}")] + + for old, new in to_replace: + rest = rest.replace(old.upper(), new.upper()) + rest = rest.replace(old.lower(), new.lower()) + + to_replace = [ + (r"a{\r}", r"\r{a}"), # "Nyga{\r}rd" -> "Nyg\r{a}rd", bug in doi.org + ("Josephson", "{J}osephson"), + ("Majorana", "{M}ajorana"), + ("Andreev", "{A}ndreev"), + ("Kramers", "{K}ramers"), + ("Kitaev", "{K}itaev"), + ( + r"metastable0and$\uppi$states", + r"metastable $0$ and $\pi$ states", + ), # fix for 10.1103/physrevb.63.214512 + ( + r"Land{\'{e}}{gFactors}", + r"Land{\'{e}} {$g$} Factors", + ), # fix for PhysRevLett.96.026804 + ] + + # I got these by using JabRef and converting to abbr journals + # and parsing the git diff. + journals = [ + ("Advanced Materials", "Adv. Mater."), + ("Annals of Physics", "Ann. Phys."), + ("Applied Physics Letters", "Appl. Phys. Lett."), + ("JETP Lett", "JETP Lett."), + ("Journal de Physique", "J. Phys."), + ("Journal of Computational Physics", "J. Comput. Phys."), + ("Journal of Experimental and Theoretical Physics", "J. Exp. Theor. Phys."), + ("Journal of Low Temperature Physics", "J. Low Temp. Phys."), + ( + "Journal of Physics A: Mathematical and Theoretical", + "J. Phys. A: Math. Theor.", + ), + ("Journal of Physics: Condensed Matter", "J. Phys.: Condens. Matter"), + ("Nano Letters", "Nano Lett."), + ("Nature Communications", "Nat. Commun."), + ("Nature Materials", "Nat. Mater."), + ("Nature Nanotechnology", "Nat. Nanotechnol."), + ("Nature Physics", "Nat. Phys."), + ("New Journal of Physics", "New J. Phys."), + ("Physical Review B", "Phys. Rev. B"), + ("Physical Review Letters", "Phys. Rev. Lett."), + ("Physical Review X", "Phys. Rev. X"), + ("Physical Review", "Phys. Rev."), # should be before the above subs + ("Physics-Uspekhi", "Phys. Usp."), + ("Reports on Progress in Physics", "Rep. Prog. Phys."), + ("Review of Scientific Instruments", "Rev. Sci. Instrum."), + ("Reviews of Modern Physics", "Rev. Mod. Phys."), + ("Science Advances", "Sci. Adv."), + ("Scientific Reports", "Sci. Rep."), + ("Semiconductor Science and Technology", "Semicond. Sci. Technol."), + ] + + # Manually added + journals += [ + ( + "Annual Review of Condensed Matter Physics", + "Annu. Rev. Condens. Matter Phys.", + ), + ("{EPL} (Europhysics Letters)", "{EPL}"), + ("Nature Reviews Materials", "Nat. Rev. Mater."), + ("Physics Letters", "Phys. Lett."), + ("The European Physical Journal B", "Eur. Phys. J. B"), + ("{SIAM} Journal on Numerical Analysis", "{SIAM} J. Numer. Anal."), + ("{AIP} Conference Proceedings", "{AIP} Conf. Proc."), + ] + + for old, new in to_replace + journals: + rest = rest.replace(old, new) + + result = bib_type + "{" + key + "," + rest + + print(result, "\n") + return result + + +@functools.lru_cache() +def doi2bib(doi): + """Return a bibTeX string of metadata for a given DOI.""" + url = "http://dx.doi.org/" + doi + headers = {"accept": "application/x-bibtex"} + r = requests.get(url, headers=headers) + r.encoding = "utf-8" + return r.text + + +bibs = [f for f in glob.glob("*yaml") if "tmp.yaml" not in f] +print("Reading: ", bibs) + +mapping = {} +for fname in bibs: + with open(fname) as f: + mapping = {**mapping, **yaml.safe_load(f)} +dois = dict(sorted(mapping.items())) + + +with ThreadPoolExecutor() as ex: + futs = ex.map(doi2bib, list(dois.values())) + bibs = list(futs) + + +entries = [replace_key(key, bib) for key, bib in zip(dois.keys(), bibs)] + +bib_files = glob.glob("not_on_crossref.bib") +with open("paper.bib", "w") as outfile: + outfile.write("@preamble{ {\\providecommand{\\BIBYu}{Yu} } }\n\n") + for fname in bib_files: + outfile.write(f"\n% Below is from `{fname}`.\n\n") + with open(fname) as infile: + outfile.write(infile.read()) + outfile.write("\n% Below is from all `yaml` files.\n\n") + for e in entries: + for line in e.split('\n'): + # Remove the url line + if "url = {" not in line: + outfile.write(f"{line}\n") + outfile.write('\n') diff --git a/not_on_crossref.bib b/not_on_crossref.bib new file mode 100644 index 0000000..4d6ca7f --- /dev/null +++ b/not_on_crossref.bib @@ -0,0 +1,85 @@ +@PhdThesis{Castro2008, + author = {Castro, Rui M}, + title = {Active learning and adaptive sampling for non-parametric inference}, + year = {2008}, + school = {Rice University}, +} + +@InCollection{Figueiredo1995, + author = {de Figueiredo, Luiz Henrique}, + title = {Adaptive sampling of parametric curves}, + booktitle = {Graphics Gems V}, + year = {1995}, + publisher = {Elsevier}, + pages = {173--178}, +} + +@Article{Galassi1996, + author = {Galassi, Mark and Davies, Jim and Theiler, James and Gough, Brian and Jungman, Gerard and Alken, Patrick and Booth, Michael and Rossi, Fabrice}, + title = {GNU scientific library}, + journal = {No. Release}, + year = {1996}, + volume = {2}, +} + +@Article{Laeven2019, + author = {Laeven, Tom and Nijholt, Bas and Wimmer, Michael and Akhmerov, Anton R}, + title = {Enhanced proximity effect in zigzag-shaped Majorana Josephson junctions}, + journal = {arXiv preprint arXiv:1903.06168}, + year = {2019}, +} + +@Article{Melo2019, + author = {Melo, André and Rubbert, Sebastian and Akhmerov, Anton R}, + title = {Supercurrent-induced Majorana bound states in a planar geometry}, + journal = {arXiv preprint arXiv:1905.02725}, + year = {2019}, +} + +@Misc{Nijholt2018, + author = {Bas Nijholt and Joseph Weston and Anton Akhmerov}, + title = {Adaptive documentation}, + note = {https://adaptive.readthedocs.io}, + year = {2018}, +} + +@Article{Takhtaganov2018, + author = {Takhtaganov, Timur and Müller, Juliane}, + title = {Adaptive Gaussian process surrogates for Bayesian inference}, + journal = {arXiv preprint arXiv:1809.10784}, + year = {2018}, +} + +@Article{Vuik2018, + author = {Vuik, Adriaan and Nijholt, Bas and Akhmerov, AR and Wimmer, Michael}, + title = {Reproducing topological properties with quasi-Majorana states}, + journal = {arXiv preprint arXiv:1806.02801}, + year = {2018}, +} + +@Online{Wolfram2011, + author = {Stephen Wolfram}, + title = {Mathematica: Adaptive Plotting}, + year = {2011}, + url = {http://demonstrations.wolfram.com/AdaptivePlotting/}, + urldate = {2019-09-10}, +} + +@Misc{WolframResearch, + author = {Wolfram Research, Inc.}, + title = {Mathematica, Version 12.0}, + note = {Champaign, IL, 2019}, +} + +@Article{Dyn1990, + doi = {10.1093/imanum/10.1.137}, + url = {https://doi.org/10.1093%2Fimanum%2F10.1.137}, + year = 1990, + publisher = {Oxford University Press ({OUP})}, + volume = {10}, + number = {1}, + pages = {137--154}, + author = {Nira Dyn and David Levin and Samuel Rippa}, + title = {Data Dependent Triangulations for Piecewise Linear Interpolation}, + journal = {{IMA} Journal of Numerical Analysis} +} diff --git a/paper.bib b/paper.bib index 2062978..fdd3a41 100755 --- a/paper.bib +++ b/paper.bib @@ -1,3 +1,8 @@ +@preamble{ {\providecommand{\BIBYu}{Yu} } } + + +% Below is from `not_on_crossref.bib`. + @PhdThesis{Castro2008, author = {Castro, Rui M}, title = {Active learning and adaptive sampling for non-parametric inference}, @@ -71,208 +76,207 @@ note = {Champaign, IL, 2019}, } -% Below has DOI and is taken from the doi.org API +@Article{Dyn1990, + doi = {10.1093/imanum/10.1.137}, + url = {https://doi.org/10.1093%2Fimanum%2F10.1.137}, + year = 1990, + publisher = {Oxford University Press ({OUP})}, + volume = {10}, + number = {1}, + pages = {137--154}, + author = {Nira Dyn and David Levin and Samuel Rippa}, + title = {Data Dependent Triangulations for Piecewise Linear Interpolation}, + journal = {{IMA} Journal of Numerical Analysis} +} + +% Below is from all `yaml` files. @article{Alliez2003, - doi = {10.1145/882262.882296}, - url = {https://doi.org/10.1145%2F882262.882296}, - year = 2003, - month = {jul}, - publisher = {Association for Computing Machinery ({ACM})}, - volume = {22}, - number = {3}, - pages = {485}, - author = {Pierre Alliez and David Cohen-Steiner and Olivier Devillers and Bruno L{\'{e}}vy and Mathieu Desbrun}, - title = {Anisotropic polygonal remeshing}, - journal = {{ACM} Transactions on Graphics} + doi = {10.1145/882262.882296}, + year = 2003, + month = {jul}, + publisher = {Association for Computing Machinery ({ACM})}, + volume = {22}, + number = {3}, + pages = {485}, + author = {Pierre Alliez and David Cohen-Steiner and Olivier Devillers and Bruno L{\'{e}}vy and Mathieu Desbrun}, + title = {Anisotropic polygonal remeshing}, + journal = {{ACM} Transactions on Graphics} } @article{Berger1984, - doi = {10.1016/0021-9991(84)90073-1}, - url = {https://doi.org/10.1016%2F0021-9991%2884%2990073-1}, - year = 1984, - month = {mar}, - publisher = {Elsevier {BV}}, - volume = {53}, - number = {3}, - pages = {484--512}, - author = {Marsha J Berger and Joseph Oliger}, - title = {Adaptive mesh refinement for hyperbolic partial differential equations}, - journal = {Journal of Computational Physics} + doi = {10.1016/0021-9991(84)90073-1}, + year = 1984, + month = {mar}, + publisher = {Elsevier {BV}}, + volume = {53}, + number = {3}, + pages = {484--512}, + author = {Marsha J Berger and Joseph Oliger}, + title = {Adaptive mesh refinement for hyperbolic partial differential equations}, + journal = {J. Comput. Phys.} } @article{Berger1989, - doi = {10.1016/0021-9991(89)90035-1}, - url = {https://doi.org/10.1016%2F0021-9991%2889%2990035-1}, - year = 1989, - month = {may}, - publisher = {Elsevier {BV}}, - volume = {82}, - number = {1}, - pages = {64--84}, - author = {M.J. Berger and P. Colella}, - title = {Local adaptive mesh refinement for shock hydrodynamics}, - journal = {Journal of Computational Physics} + doi = {10.1016/0021-9991(89)90035-1}, + year = 1989, + month = {may}, + publisher = {Elsevier {BV}}, + volume = {82}, + number = {1}, + pages = {64--84}, + author = {M.J. Berger and P. Colella}, + title = {Local adaptive mesh refinement for shock hydrodynamics}, + journal = {J. Comput. Phys.} } @article{Bommer2019, - doi = {10.1103/physrevlett.122.187702}, - url = {https://doi.org/10.1103%2Fphysrevlett.122.187702}, - year = 2019, - month = {may}, - publisher = {American Physical Society ({APS})}, - volume = {122}, - number = {18}, - author = {Jouri D.{\hspace{0.167em}}S. Bommer and Hao Zhang and \"{O}nder G\"{u}l and Bas Nijholt and Michael Wimmer and Filipp N. Rybakov and Julien Garaud and Donjan Rodic and Egor Babaev and Matthias Troyer and Diana Car and S{\'{e}}bastien R. Plissard and Erik P.{\hspace{0.167em}}A.{\hspace{0.167em}}M. Bakkers and Kenji Watanabe and Takashi Taniguchi and Leo P. Kouwenhoven}, - title = {Spin-Orbit Protection of Induced Superconductivity in Majorana Nanowires}, - journal = {Physical Review Letters} + doi = {10.1103/physrevlett.122.187702}, + year = 2019, + month = {may}, + publisher = {American Physical Society ({APS})}, + volume = {122}, + number = {18}, + author = {Jouri D.{\hspace{0.167em}}S. Bommer and Hao Zhang and \"{O}nder G\"{u}l and Bas Nijholt and Michael Wimmer and Filipp N. Rybakov and Julien Garaud and Donjan Rodic and Egor Babaev and Matthias Troyer and Diana Car and S{\'{e}}bastien R. Plissard and Erik P.{\hspace{0.167em}}A.{\hspace{0.167em}}M. Bakkers and Kenji Watanabe and Takashi Taniguchi and Leo P. Kouwenhoven}, + title = {Spin-Orbit Protection of Induced Superconductivity in {M}ajorana Nanowires}, + journal = {Phys. Rev. Lett.} } @article{Chen2017, - doi = {10.1088/1361-6501/aa7d31}, - url = {https://doi.org/10.1088%2F1361-6501%2Faa7d31}, - year = 2017, - month = {sep}, - publisher = {{IOP} Publishing}, - volume = {28}, - number = {10}, - pages = {105005}, - author = {Yuhang Chen and Chaoyang Peng}, - title = {Intelligent adaptive sampling guided by Gaussian process inference}, - journal = {Measurement Science and Technology} + doi = {10.1088/1361-6501/aa7d31}, + year = 2017, + month = {sep}, + publisher = {{IOP} Publishing}, + volume = {28}, + number = {10}, + pages = {105005}, + author = {Yuhang Chen and Chaoyang Peng}, + title = {Intelligent adaptive sampling guided by Gaussian process inference}, + journal = {Measurement Science and Technology} } @article{Clenshaw1960, - doi = {10.1007/bf01386223}, - url = {https://doi.org/10.1007%2Fbf01386223}, - year = 1960, - month = {dec}, - publisher = {Springer Science and Business Media {LLC}}, - volume = {2}, - number = {1}, - pages = {197--205}, - author = {C. W. Clenshaw and A. R. Curtis}, - title = {A method for numerical integration on an automatic computer}, - journal = {Numerische Mathematik} + doi = {10.1007/bf01386223}, + year = 1960, + month = {dec}, + publisher = {Springer Science and Business Media {LLC}}, + volume = {2}, + number = {1}, + pages = {197--205}, + author = {C. W. Clenshaw and A. R. Curtis}, + title = {A method for numerical integration on an automatic computer}, + journal = {Numerische Mathematik} } @inproceedings{DeRose1998, - doi = {10.1145/280814.280826}, - url = {https://doi.org/10.1145%2F280814.280826}, - year = 1998, - publisher = {{ACM} Press}, - author = {Tony DeRose and Michael Kass and Tien Truong}, - title = {Subdivision surfaces in character animation}, - booktitle = {Proceedings of the 25th annual conference on Computer graphics and interactive techniques - {SIGGRAPH} {\textquotesingle}98} + doi = {10.1145/280814.280826}, + year = 1998, + publisher = {{ACM} Press}, + author = {Tony DeRose and Michael Kass and Tien Truong}, + title = {Subdivision surfaces in character animation}, + booktitle = {Proceedings of the 25th annual conference on Computer graphics and interactive techniques - {SIGGRAPH} {\textquotesingle}98} } @article{Dyn1990, - doi = {10.1093/imanum/10.1.137}, - url = {https://doi.org/10.1093%2Fimanum%2F10.1.137}, - year = 1990, - publisher = {Oxford University Press ({OUP})}, - volume = {10}, - number = {1}, - pages = {137--154}, - author = {NIRA DYN and DAVID LEVIN and SAMUEL RIPPA}, - title = {Data Dependent Triangulations for Piecewise Linear Interpolation}, - journal = {{IMA} Journal of Numerical Analysis} + doi = {10.1093/imanum/10.1.137}, + year = 1990, + publisher = {Oxford University Press ({OUP})}, + volume = {10}, + number = {1}, + pages = {137--154}, + author = {NIRA DYN and DAVID LEVIN and SAMUEL RIPPA}, + title = {Data Dependent Triangulations for Piecewise Linear Interpolation}, + journal = {{IMA} Journal of Numerical Analysis} } @article{Emery1998, - doi = {10.1088/0957-0233/9/6/003}, - url = {https://doi.org/10.1088%2F0957-0233%2F9%2F6%2F003}, - year = 1998, - month = {jun}, - publisher = {{IOP} Publishing}, - volume = {9}, - number = {6}, - pages = {864--876}, - author = {A F Emery and Aleksey V Nenarokomov}, - title = {Optimal experiment design}, - journal = {Measurement Science and Technology} + doi = {10.1088/0957-0233/9/6/003}, + year = 1998, + month = {jun}, + publisher = {{IOP} Publishing}, + volume = {9}, + number = {6}, + pages = {864--876}, + author = {A F Emery and Aleksey V Nenarokomov}, + title = {Optimal experiment design}, + journal = {Measurement Science and Technology} } @article{Gonnet2010, - doi = {10.1145/1824801.1824804}, - url = {https://doi.org/10.1145%2F1824801.1824804}, - year = 2010, - month = {sep}, - publisher = {Association for Computing Machinery ({ACM})}, - volume = {37}, - number = {3}, - pages = {1--32}, - author = {Pedro Gonnet}, - title = {Increasing the Reliability of Adaptive Quadrature Using Explicit Interpolants}, - journal = {{ACM} Transactions on Mathematical Software} + doi = {10.1145/1824801.1824804}, + year = 2010, + month = {sep}, + publisher = {Association for Computing Machinery ({ACM})}, + volume = {37}, + number = {3}, + pages = {1--32}, + author = {Pedro Gonnet}, + title = {Increasing the Reliability of Adaptive Quadrature Using Explicit Interpolants}, + journal = {{ACM} Transactions on Mathematical Software} } @inproceedings{Gramacy2004, - doi = {10.1145/1015330.1015367}, - url = {https://doi.org/10.1145%2F1015330.1015367}, - year = 2004, - publisher = {{ACM} Press}, - author = {Robert B. Gramacy and Herbert K. H. Lee and William G. Macready}, - title = {Parameter space exploration with Gaussian process trees}, - booktitle = {Twenty-first international conference on Machine learning - {ICML} {\textquotesingle}04} + doi = {10.1145/1015330.1015367}, + year = 2004, + publisher = {{ACM} Press}, + author = {Robert B. Gramacy and Herbert K. H. Lee and William G. Macready}, + title = {Parameter space exploration with Gaussian process trees}, + booktitle = {Twenty-first international conference on Machine learning - {ICML} {\textquotesingle}04} } @book{Hu2006, - doi = {10.1002/047005588x}, - url = {https://doi.org/10.1002%2F047005588x}, - year = 2006, - month = {apr}, - publisher = {John Wiley {\&} Sons, Inc.}, - author = {Feifang Hu and William F. Rosenberger}, - title = {The Theory of Response-Adaptive Randomization in Clinical Trials} + doi = {10.1002/047005588x}, + year = 2006, + month = {apr}, + publisher = {John Wiley {\&} Sons, Inc.}, + author = {Feifang Hu and William F. Rosenberger}, + title = {The Theory of Response-Adaptive Randomization in Clinical Trials} } @article{Klein1999, - doi = {10.1016/s0377-0427(99)00156-9}, - url = {https://doi.org/10.1016%2Fs0377-0427%2899%2900156-9}, - year = 1999, - month = {sep}, - publisher = {Elsevier {BV}}, - volume = {109}, - number = {1-2}, - pages = {123--152}, - author = {Richard I. Klein}, - title = {Star formation with 3-D adaptive mesh refinement: the collapse and fragmentation of molecular clouds}, - journal = {Journal of Computational and Applied Mathematics} + doi = {10.1016/s0377-0427(99)00156-9}, + year = 1999, + month = {sep}, + publisher = {Elsevier {BV}}, + volume = {109}, + number = {1-2}, + pages = {123--152}, + author = {Richard I. Klein}, + title = {Star formation with 3-D adaptive mesh refinement: the collapse and fragmentation of molecular clouds}, + journal = {Journal of Computational and Applied Mathematics} } @article{Nijholt2016, - doi = {10.1103/physrevb.93.235434}, - url = {https://doi.org/10.1103%2Fphysrevb.93.235434}, - year = 2016, - month = {jun}, - publisher = {American Physical Society ({APS})}, - volume = {93}, - number = {23}, - author = {Bas Nijholt and Anton R. Akhmerov}, - title = {Orbital effect of magnetic field on the Majorana phase diagram}, - journal = {Physical Review B} + doi = {10.1103/physrevb.93.235434}, + year = 2016, + month = {jun}, + publisher = {American Physical Society ({APS})}, + volume = {93}, + number = {23}, + author = {Bas Nijholt and Anton R. Akhmerov}, + title = {Orbital effect of magnetic field on the {M}ajorana phase diagram}, + journal = {Phys. Rev. B} } @misc{Nijholt2019, - doi = {10.5281/zenodo.1182437}, - url = {https://zenodo.org/record/1182437}, + doi = {10.5281/ZENODO.1182437}, author = {Nijholt, Bas and Weston, Joseph and {JornHoofwijk} and Akhmerov, Anton}, title = {python-adaptive/adaptive: version 0.8.0}, publisher = {Zenodo}, year = {2019} } + @article{Visvalingam1990, - i = {10.1111/j.1467-8659.1990.tb00398.x}, - url = {https://doi.org/10.1111%2Fj.1467-8659.1990.tb00398.x}, - year = 1990, - month = {sep}, - publisher = {Wiley}, - volume = {9}, - number = {3}, - pages = {213--225}, - author = {M. Visvalingam and J. D. Whyatt}, - title = {The Douglas-Peucker Algorithm for Line Simplification: Re-evaluation through Visualization}, - journal = {Computer Graphics Forum} -} \ No newline at end of file + doi = {10.1111/j.1467-8659.1990.tb00398.x}, + year = 1990, + month = {sep}, + publisher = {Wiley}, + volume = {9}, + number = {3}, + pages = {213--225}, + author = {M. Visvalingam and J. D. Whyatt}, + title = {The Douglas-Peucker Algorithm for Line Simplification: Re-evaluation through Visualization}, + journal = {Computer Graphics Forum} +} + diff --git a/paper.yaml b/paper.yaml new file mode 100644 index 0000000..3ebf657 --- /dev/null +++ b/paper.yaml @@ -0,0 +1,16 @@ +Alliez2003: 10.1145/882262.882296 +Berger1984: 10.1016/0021-9991(84)90073-1 +Berger1989: 10.1016/0021-9991(89)90035-1 +Bommer2019: 10.1103/physrevlett.122.187702 +Chen2017: 10.1088/1361-6501/aa7d31 +Clenshaw1960: 10.1007/bf01386223 +DeRose1998: 10.1145/280814.280826 +Dyn1990: 10.1093/imanum/10.1.137 +Emery1998: 10.1088/0957-0233/9/6/003 +Gonnet2010: 10.1145/1824801.1824804 +Gramacy2004: 10.1145/1015330.1015367 +Hu2006: 10.1002/047005588x +Klein1999: 10.1016/s0377-0427(99)00156-9 +Nijholt2016: 10.1103/physrevb.93.235434 +Nijholt2019: 10.5281/zenodo.1182437 +Visvalingam1990: 10.1111/j.1467-8659.1990.tb00398.x -- GitLab