diff --git a/joss.07134/10.21105.joss.07134.crossref.xml b/joss.07134/10.21105.joss.07134.crossref.xml new file mode 100644 index 0000000000..10d10d32fc --- /dev/null +++ b/joss.07134/10.21105.joss.07134.crossref.xml @@ -0,0 +1,306 @@ + + + + 20241009151249-936ad3d017b759e9132b271c7f89a4280a8c88f7 + 20241009151249 + + JOSS Admin + admin@theoj.org + + The Open Journal + + + + + Journal of Open Source Software + JOSS + 2475-9066 + + 10.21105/joss + https://joss.theoj.org + + + + + 10 + 2024 + + + 9 + + 102 + + + + Bodge: Python package for efficient tight-binding +modeling of superconducting nanostructures + + + + Jabir Ali + Ouassou + https://orcid.org/0000-0002-3725-0885 + + + + 10 + 09 + 2024 + + + 7134 + + + 10.21105/joss.07134 + + + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + http://creativecommons.org/licenses/by/4.0/ + + + + Software archive + 10.5281/zenodo.13839641 + + + GitHub review issue + https://github.com/openjournals/joss-reviews/issues/7134 + + + + 10.21105/joss.07134 + https://joss.theoj.org/papers/10.21105/joss.07134 + + + https://joss.theoj.org/papers/10.21105/joss.07134.pdf + + + + + + Numerical solutions to non-linear +inhomogeneous problems in superconductivity + Benfenati + 2022 + Benfenati, A. L. (2022). Numerical +solutions to non-linear inhomogeneous problems in superconductivity [PhD +thesis, KTH]. +https://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-311403 + + + Efficient numerical approach to inhomogeneous +superconductivity: The Chebyshev–Bogoliubov–de Gennes +method + Covaci + Physical Review Letters + 105 + 10.1103/PhysRevLett.105.167006 + 0031-9007 + 2010 + Covaci, L., Peeters, F. M., & +Berciu, M. (2010). Efficient numerical approach to inhomogeneous +superconductivity: The Chebyshev–Bogoliubov–de Gennes method. Physical +Review Letters, 105, 167006. +https://doi.org/10.1103/PhysRevLett.105.167006 + + + Superconductivity of metals and +alloys + de Gennes + 10.1201/9780429497032 + 9780429497032 + 1966 + de Gennes, P. G. (1966). +Superconductivity of metals and alloys. +https://doi.org/10.1201/9780429497032 + + + Efficient linear scaling algorithm for +tight-binding molecular dynamics + Goedecker + Physical Review Letters + 73 + 10.1103/PhysRevLett.73.122 + 0031-9007 + 1994 + Goedecker, S., & Colombo, L. +(1994). Efficient linear scaling algorithm for tight-binding molecular +dynamics. Physical Review Letters, 73, 122–125. +https://doi.org/10.1103/PhysRevLett.73.122 + + + Kwant: A software package for quantum +transport + Groth + New Journal of Physics + 16 + 10.1088/1367-2630/16/6/063065 + 2014 + Groth, C. W., Wimmer, M., Akhmerov, +A. R., & Waintal, X. (2014). Kwant: A software package for quantum +transport. New Journal of Physics, 16, 063065. +https://doi.org/10.1088/1367-2630/16/6/063065 + + + Pybinding: A python package for tight-binding +calculations + Moldovan + Zenodo + 10.5281/Zenodo.4010216 + 2020 + Moldovan, Dean, Anđelković, Miša, +& Peeters, F. (2020). Pybinding: A python package for tight-binding +calculations. Zenodo. +https://doi.org/10.5281/Zenodo.4010216 + + + N-independent localized Krylov–Bogoliubov-de +Gennes method: Ultra-fast numerical approach to large-scale +inhomogeneous superconductors + Nagai + Journal of the Physical Society of +Japan + 89 + 10.7566/JPSJ.89.074703 + 0031-9015 + 2020 + Nagai, Y. (2020). N-independent +localized Krylov–Bogoliubov-de Gennes method: Ultra-fast numerical +approach to large-scale inhomogeneous superconductors. Journal of the +Physical Society of Japan, 89, 074703. +https://doi.org/10.7566/JPSJ.89.074703 + + + Reduced-shifted conjugate-gradient method for +a Green’s function: Efficient numerical approach in a nano-structured +superconductor + Nagai + Journal of the Physical Society of +Japan + 86 + 10.7566/JPSJ.86.014708 + 0031-9015 + 2017 + Nagai, Y., Shinohara, Y., Futamura, +Y., & Sakurai, T. (2017). Reduced-shifted conjugate-gradient method +for a Green’s function: Efficient numerical approach in a +nano-structured superconductor. Journal of the Physical Society of +Japan, 86, 014708. +https://doi.org/10.7566/JPSJ.86.014708 + + + DC Josephson effect in +altermagnets + Ouassou + Physical Review Letters + 131 + 10.1103/PhysRevLett.131.076003 + 0031-9007 + 2023 + Ouassou, J. A., Brataas, A., & +Linder, J. (2023). DC Josephson effect in altermagnets. Physical Review +Letters, 131, 076003. +https://doi.org/10.1103/PhysRevLett.131.076003 + + + Electric control of superconducting +transition through a spin-orbit coupled interface + Ouassou + Scientific Reports + 6 + 10.1038/SRep29312 + 2016 + Ouassou, J. A., Bernardo, A. D., +Robinson, J. W. A., & Linder, J. (2016). Electric control of +superconducting transition through a spin-orbit coupled interface. +Scientific Reports, 6, 29312. +https://doi.org/10.1038/SRep29312 + + + Dzyaloshinskii–Moriya spin–spin interaction +from mixed-parity superconductivity + Ouassou + 10.48550/arXiv.2407.07144 + 2024 + Ouassou, J. A., Yokoyama, T., & +Linder, J. (2024). Dzyaloshinskii–Moriya spin–spin interaction from +mixed-parity superconductivity. +https://doi.org/10.48550/arXiv.2407.07144 + + + Manipulating superconductivity in magnetic +nanostructures in and out of equilibrium + Ouassou + 2019 + Ouassou, J. A. (2019). Manipulating +superconductivity in magnetic nanostructures in and out of equilibrium +[PhD thesis, NTNU]. +https://pvv.org/~jabirali/academic/phd.pdf + + + RKKY interaction in triplet superconductors: +Dzyaloshinskii–Moriya-type interaction mediated by spin-polarized Cooper +pairs + Ouassou + Physical Review B + 109 + 10.1103/PhysRevB.109.174506 + 2469-9950 + 2024 + Ouassou, J. A., Yokoyama, T., & +Linder, J. (2024). RKKY interaction in triplet superconductors: +Dzyaloshinskii–Moriya-type interaction mediated by spin-polarized Cooper +pairs. Physical Review B, 109, 174506. +https://doi.org/10.1103/PhysRevB.109.174506 + + + SciPy 1.0: Fundamental Algorithms for +Scientific Computing in Python + Virtanen + Nature Methods + 17 + 10.1038/S41592-019-0686-2 + 2020 + Virtanen, P., Gommers, R., Oliphant, +T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, +P., Weckesser, W., Bright, J., van der Walt, S. J., Brett, M., Wilson, +J., Millman, K. J., Mayorov, N., Nelson, A. R. J., Jones, E., Kern, R., +Larson, E., … SciPy 1.0 Contributors. (2020). SciPy 1.0: Fundamental +Algorithms for Scientific Computing in Python. Nature Methods, 17, +261–272. +https://doi.org/10.1038/S41592-019-0686-2 + + + The kernel polynomial method + Weiße + Reviews of Modern Physics + 78 + 10.1103/RevModPhys.78.275 + 2006 + Weiße, A., Wellein, G., Alvermann, +A., & Fehske, H. (2006). The kernel polynomial method. Reviews of +Modern Physics, 78, 275–306. +https://doi.org/10.1103/RevModPhys.78.275 + + + Bogoliubov–de Gennes method and its +applications + Zhu + 10.1007/978-3-319-31314-6 + 9783319313122 + 2016 + Zhu, J.-X. (2016). Bogoliubov–de +Gennes method and its applications. +https://doi.org/10.1007/978-3-319-31314-6 + + + + + + diff --git a/joss.07134/10.21105.joss.07134.pdf b/joss.07134/10.21105.joss.07134.pdf new file mode 100644 index 0000000000..a9097a9c51 Binary files /dev/null and b/joss.07134/10.21105.joss.07134.pdf differ diff --git a/joss.07134/paper.jats/10.21105.joss.07134.jats b/joss.07134/paper.jats/10.21105.joss.07134.jats new file mode 100644 index 0000000000..b30381fbc6 --- /dev/null +++ b/joss.07134/paper.jats/10.21105.joss.07134.jats @@ -0,0 +1,747 @@ + + +
+ + + + +Journal of Open Source Software +JOSS + +2475-9066 + +Open Journals + + + +7134 +10.21105/joss.07134 + +Bodge: Python package for efficient tight-binding +modeling of superconducting nanostructures + + + +https://orcid.org/0000-0002-3725-0885 + +Ouassou +Jabir Ali + +jabir.ali.ouassou@hvl.no + + + + + +Department of Computer Science, Electrical Engineering and +Mathematical Sciences, Western Norway University of Applied Sciences, +NO-5528 Haugesund, Norway + + + + +Center for Quantum Spintronics, Department of Physics, +Norwegian University of Science and Technology, NO-7491 Trondheim, +Norway + + + + +12 +7 +2024 + +9 +102 +7134 + +Authors of papers retain copyright and release the +work under a Creative Commons Attribution 4.0 International License (CC +BY 4.0) +2022 +The article authors + +Authors of papers retain copyright and release the work under +a Creative Commons Attribution 4.0 International License (CC BY +4.0) + + + +python +numerical physics +condensed matter physics +tight-binding models +superconductivity +sparse matrices +bdg equations + + + + + + Summary +

Bodge + is a Python package for constructing large-scale real-space + tight-binding models for calculations in condensed matter + physics. “Large-scale” means that it should remain performant even for + lattices with millions of atoms, and “real-space” means that the model + is formulated in terms of individual lattice sites and not in momentum + space, for example.

+

Although general tight-binding models can be constructed with this + package, the main focus is on the Bogoliubov–De Gennes (“BoDGe”) + Hamiltonian used to model superconductivity in the clean limit + (de + Gennes, 1966; + Zhu, + 2016). The package is designed to be easy to use, flexible, and + extensible—and very few lines of code are required to model + heterostructures containing, e.g., conventional and unconventional + superconductors, ferromagnets and antiferromagnets, altermagnetism, + and spin-orbit coupling.

+

In other words: If you want a lattice model for superconducting + nanostructures, and want something that is computationally efficient + yet easy to use, Bodge should be a good choice.

+
+ + Statement of need +

In condensed matter physics, a standard methodology for modeling + materials is the tight-binding model. In the context + of electronic systems (e.g., metals), the electrons in such a model + typically “live” at one atomic site, but from time to time “hop” over + to neighboring atoms. By including a spin structure as well in this + formalism—meaning that we keep track of what spins each electron has, + and whether the spins “flip” during various interactions that are + permitted on this lattice—we can model a wide variety of physical + phenomena including superconductivity and magnetism. Mathematically, + this is often expressed in the language of quantum field theory: We + define one operator + + ciσ + that “puts” an electron with spin + + σ{,} + on an atomic site with some index + + i, + and another operator + + ciσ + that “removes” a corresponding electron. The Hamiltonian operator + + + + of the system is then constructed out of these electron operators—and + this can in turn be used to calculate, e.g., the ground-state energy, + electric currents, superconducting order parameters, and other + relevant material properties.

+

To do anything useful with that Hamiltonian on a + computer, however, you typically have to translate it to a + matrix form. This is where Bodge enters the picture:

+ + +

It provides an easy-to-use Pythonic interface for constructing + the Hamiltonian of a tight-binding system. Particular focus has + been placed on making it easy to describe systems that include + various forms of superconductivity and magnetism, making it a + great choice for modeling, e.g., superconductivity in magnetic + heterostructures.

+
+ +

It scales well to large systems. For efficiency, it uses SciPy + sparse matrices internally + (Virtanen + et al., 2020), and it constructs large Hamiltonians in + + + 𝒪(N) + time and memory where + + N + is the number of sites. According to + my + benchmarks, the performance is similar to + Kwant + (Groth + et al., 2014), which is the state of the art for numerical + condensed matter physics. The results can be returned in most + NumPy or SciPy matrix formats.

+
+ +

It is designed to be extensible. For instance, while Bodge + currently only implements square and cubic lattices (via the + CubicLattice class), it can be used to + construct Hamiltonians on triangular or hexagonal lattices if you + want: you just need to create your own subclass of the + Lattice base class and implement + two-to-three short iterators that describe how to iterate through + your lattice. (Specifically: the methods + .sites, .bonds, and + .edges need separate implementations per + Lattice type.)

+
+ +

Some convenience methods are provided to help you with the next + steps of your calculations: Extracting the local density of states + (LDOS), calculating the free energy, diagonalizing the + Hamiltonian, etc. (Some more advanced algorithms live on the + develop branch on GitHub, but have not yet + been assimilated into the official package.)

+
+ +

The code itself follows modern software development practices: + Full test coverage with continuous integration (via + pytest), fast runtime type checking (via + beartype), and PEP-8 compliance (via + black).

+
+
+

There are two main alternatives that arguably fill a similar niche + to Bodge: Kwant + (Groth + et al., 2014) and Pybinding + (Moldovan + et al., 2020). Compared to these packages, the main benefit of + Bodge is the focus on the BdG Hamiltonian in particular. For instance, + using Kwant, it is up to the user to declare that each lattice site + has four degrees of freedom (spin-up electrons, spin-down electrons, + spin-up holes, and spin-down holes), and to ensure that you construct + a Hamiltonian with the correct particle-hole symmetries. Bodge, + however, assumes that these are the only relevant + degrees of freedom, and enforces the relevant symmetries by default. + In practice, this means that Kwant can be used to study a broader + variety of physical systems, whereas Bodge can provide a friendlier + syntax for users who work specifically on superconducting systems. + Both packages support both NumPy arrays and SciPy sparse matrices as + output formats, and both provide similar performance in the limit of + large systems.

+

Sparse matrices, including, e.g., the Compressed Sparse + Row (CSR) format used below, have the advantage that they + only store the non-zero elements of a matrix. For a typical + tight-binding model with nearest-neighbor hopping terms, the + Hamiltonian matrix that describes a lattice with + + + N + atoms has + + 𝒪(N2) + elements where only + + 𝒪(N) + are non-zero. Thus, algorithms that leverage sparse matrices often + result in at least an + + 𝒪(N) + reduction in CPU and RAM requirements, which becomes highly + significant for large systems. Even larger performance enhancements + can be obtained in some limits + (Nagai, + 2020; + Weiße + et al., 2006), although it depends on your system whether the + required approximations provide a good trade-off between accuracy and + speed. However, dense matrices (i.e., NumPy arrays) + allow for simpler solution algorithms based on, e.g., full matrix + diagonalization, and can become faster than sparse matrix algorithms + for small systems or when leveraging GPU acceleration. Notably, the + computational complexity of sparse matrix algorithms often come with a + large constant prefactor (e.g., the order of a Chebyshev matrix + expansion), which can actually result in worse performance for smaller + systems. For this reason, both sparse and dense matrices are fully + supported by Bodge, allowing the user to pick the most suitable matrix + format for the task at hand.

+
+ + Examples and workflows +

Introductory examples of how to use Bodge are provided in the + official + documentation. Examples of research problems that have been + studied using Bodge include superconductor/altermagnet + heterostructures + (Ouassou + et al., 2023) and RKKY interactions in unconventional + superconductors + (Ouassou + et al., 2024b, + 2024a). + These papers also describe some sparse matrix algorithms that can be + used together with Bodge, including Chebyshev expansion of the Fermi + matrix + (Benfenati, + 2022; + Goedecker + & Colombo, 1994; + Ouassou + et al., 2023; + Weiße + et al., 2006) and a quick way to calculate the local density of + states + (Nagai + et al., 2017; + Ouassou + et al., 2024b).

+

For a simple example of how this package can be used, consider a + + + 64a×64a + square lattice. Let’s assume that the whole system is a metal with + chemical potential + + μ=1.5t, + where + + t=1 + is the hopping amplitude. Moreover, let’s assume that half the system + ( + + x<32a) + is a conventional + + s-wave + superconductor with an order parameter + + Δs=0.1t, + whereas the other half is a ferromagnet with exchange field + + + 𝐌=Mz𝐞z. + To describe the Hamiltonian corresponding to this system we can use + the following code:

+ from bodge import * + +# Tight-binding parameters +t = 1 +μ = 1.5 * t +Δs = 0.1 * t +Mz = 0.5 * Δs + +# Construct the Hamiltonian +lattice = CubicLattice((64, 64, 1)) +system = Hamiltonian(lattice) + +with system as (H, Δ): + for i, j in lattice.bonds(): + H[i, j] = -t * σ0 + for i in lattice.sites(): + if i[0] < 32: + H[i, i] = -μ * σ0 + Δ[i, i] = -Δs * jσ2 + else: + H[i, i] = -μ * σ0 - Mz * σ3 +

Note the use of a context manager + (with-block) to provide an intuitive array + syntax for accessing the relevant parts of the Hamiltonian matrix, + while abstracting away the underlying sparse matrix details. + Afterwards, there are many different ways to use the resulting + object.

+

Some physical observables can be directly calculated using the + methods provided in Bodge. For instance, one can use the method + system.ldos(site, energies) to directly + calculate the local density of states at a given lattice site, which + can then be used to check for spectral features such as a + superconducting gap or a zero-energy + peak. There is also a method + system.free_energy(temperature) which + calculates the free energy of the system. By varying + parameters in the Hamiltonian (e.g., the orientation of a magnetic + field) and then minimizing this free energy, one can determine the + ground state of the system, for example.

+

Most calculations of interest, however, requires that the user + implements some code themselves. There are then two main approaches + one can take. The classic approach is matrix + diagonalization which uses dense matrices internally. Bodge + provides the method diagonalize for this + purpose:

+ E, v = system.diagonalize() +

The results above contain the positive energies + + + En + and corresponding state vectors + + 𝐯n + which satisfy the eigenvalue equation + + 𝐇𝐯n=En𝐯n. + (Only positive eigenvalues are returned due to the “Nambu doubling” of + degrees of freedom in superconducting systems.) Once the eigenvalues + and eigenvectors have been obtained, the user can themselves calculate + physical properties of interest from these using equations from + standard textbooks on the “Bogoliubov–de Gennes” approach to modeling + superconductivity + (Zhu, + 2016). It is a future goal to incorporate more calculation + methods of this kind into the Bodge package itself. Support for matrix + diagonalization using GPUs via the CuPy package is also under + development.

+

Examples of physical observables that can be calculated from the + eigenvalues and eigenvectors include the superconducting order + parameter, electric currents, and spin currents. These can in turn be + used to calculate even more material properties. For instance, the + critical current of a Josephson junction is defined as the largest + electric current that can flow through it for any phase difference, + and the critical temperature of a bulk superconductor is defined as + the largest temperature at which the superconducting order parameter + remains non-zero. These observables can thus be determined via + numerical optimization of the electric current and superconducting + order parameter, respectively. For instance, the critical temperature + can be efficiently determined using a bisection method + (Ouassou + et al., 2016; + Ouassou, + 2019).

+

A modern alternative to matrix diagonalization is a series of + algorithms based on Chebyshev expansion of the Hamiltonian matrix + (Benfenati, + 2022; + Covaci + et al., 2010; + Nagai, + 2020; + Ouassou + et al., 2023; + Weiße + et al., 2006). These algorithms take advantage of the extreme + sparsity of the Hamiltonian matrix, and thus typically provide a + significant performance benefit in the limit of very large lattices. + One of the main design goals behind Bodge has been to make it trivial + to construct sparse representations of the Hamiltonian matrix for this + purpose, and it is therefore straight-forward to export the result as, + e.g., a CSR sparse matrix:

+ H = system.matrix(format="csr") +

The user can then easily use the resulting matrix + + + 𝐇 + to formulate their own sparse matrix algorithms of this kind. For + instance, arbitrary matrix functions can typically be evaluated as a + Chebyshev expansion + + f(𝐇)=m=0M1fmTm(𝐇), + where the Chebyshev moments + + fm + of the function + + f() + are computationally inexpensive to obtain, whereas the Chebyshev + matrix polynomials + + Tm() + can be obtained via the recursion relation + (Weiße + et al., 2006) + 1$.} \end{cases}]]> + Tm(𝐇)={𝐇mif 0m1,2𝐇Tm1(𝐇)Tm2(𝐇)if m>1. + The trick is then to find a suitable matrix function + + + f(𝐇) + to study your physical system. Using the “Kernel Polynomial Method” + (Weiße + et al., 2006), the order + + M + of such a Chebyshev expansion can be decreased without serious + truncation errors.

+
+ + Acknowledgements +

I acknowledge very helpful discussions with my PostDoc supervisor + Prof. Jacob Linder when learning the BdG formalism, without which the + Bodge package would not exist today. I also thank Morten Amundsen, + Henning G. Hugdal, and Sol H. Jacobsen for useful discussions on + tight-binding modeling in general. Finally, I want to thank Mayeul + d’Avezac and Yue-Wen Fang for their constructive input during the + referee process, which has improved the Bodge software package and its + documentation.

+

This work was supported by the Research Council of Norway through + Grant No. 323766 and its Centres of Excellence funding scheme Grant + No. 262633 “QuSpin.” During the development of this package, some + numerical calculations were performed on resources provided by + Sigma2—the National Infrastructure for High Performance Computing and + Data Storage in Norway, Project No. NN9577K. The work presented in + this paper has also benefited from the Experimental Infrastructure for + Exploration of Exascale Computing (eX3), which is financially + supported by the Research Council of Norway under contract 270053.

+
+ + + + + + + + BenfenatiAndrea Ludovico + + Numerical solutions to non-linear inhomogeneous problems in superconductivity + KTH + Stockholm, Sweden + 2022 + https://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-311403 + + + + + + CovaciL. + PeetersF. M. + BerciuM. + + Efficient numerical approach to inhomogeneous superconductivity: The Chebyshev–Bogoliubov–de Gennes method + Physical Review Letters + 2010 + 105 + 0031-9007 + 10.1103/PhysRevLett.105.167006 + 167006 + + + + + + + de GennesPierre Gilles + + Superconductivity of metals and alloys + 1966 + 9780429497032 + 10.1201/9780429497032 + + + + + + GoedeckerS. + ColomboL. + + Efficient linear scaling algorithm for tight-binding molecular dynamics + Physical Review Letters + 1994 + 73 + 0031-9007 + 10.1103/PhysRevLett.73.122 + 122 + 125 + + + + + + GrothChristoph W + WimmerMichael + AkhmerovAnton R + WaintalXavier + + Kwant: A software package for quantum transport + New Journal of Physics + IOP Publishing + 2014 + 16 + 10.1088/1367-2630/16/6/063065 + 063065 + + + + + + + MoldovanDean + AnđelkovićMiša + PeetersFrancois + + Pybinding: A python package for tight-binding calculations + Zenodo + 2020 + 10.5281/Zenodo.4010216 + + + + + + NagaiYuki + + N-independent localized Krylov–Bogoliubov-de Gennes method: Ultra-fast numerical approach to large-scale inhomogeneous superconductors + Journal of the Physical Society of Japan + 2020 + 89 + 0031-9015 + 10.7566/JPSJ.89.074703 + 074703 + + + + + + + NagaiYuki + ShinoharaYasushi + FutamuraYasunori + SakuraiTetsuya + + Reduced-shifted conjugate-gradient method for a Green’s function: Efficient numerical approach in a nano-structured superconductor + Journal of the Physical Society of Japan + 2017 + 86 + 0031-9015 + 10.7566/JPSJ.86.014708 + 014708 + + + + + + + OuassouJabir Ali + BrataasArne + LinderJacob + + DC Josephson effect in altermagnets + Physical Review Letters + 2023 + 131 + 0031-9007 + 10.1103/PhysRevLett.131.076003 + 076003 + + + + + + + OuassouJabir Ali + BernardoAngelo Di + RobinsonJason W. A. + LinderJacob + + Electric control of superconducting transition through a spin-orbit coupled interface + Scientific Reports + 2016 + 6 + 10.1038/SRep29312 + 29312 + + + + + + + OuassouJabir Ali + YokoyamaTakehito + LinderJacob + + Dzyaloshinskii–Moriya spin–spin interaction from mixed-parity superconductivity + arXiv + 2024 + 10.48550/arXiv.2407.07144 + + + + + + OuassouJabir Ali + + Manipulating superconductivity in magnetic nanostructures in and out of equilibrium + NTNU + Trondheim, Norway + 2019 + https://pvv.org/~jabirali/academic/phd.pdf + + + + + + OuassouJabir Ali + YokoyamaTakehito + LinderJacob + + RKKY interaction in triplet superconductors: Dzyaloshinskii–Moriya-type interaction mediated by spin-polarized Cooper pairs + Physical Review B + 2024 + 109 + 2469-9950 + 10.1103/PhysRevB.109.174506 + 174506 + + + + + + + VirtanenPauli + GommersRalf + OliphantTravis E. + HaberlandMatt + ReddyTyler + CournapeauDavid + BurovskiEvgeni + PetersonPearu + WeckesserWarren + BrightJonathan + van der WaltStéfan J. + BrettMatthew + WilsonJoshua + MillmanK. Jarrod + MayorovNikolay + NelsonAndrew R. J. + JonesEric + KernRobert + LarsonEric + CareyC J + Polatİlhan + FengYu + MooreEric W. + VanderPlasJake + LaxaldeDenis + PerktoldJosef + CimrmanRobert + HenriksenIan + QuinteroE. A. + HarrisCharles R. + ArchibaldAnne M. + RibeiroAntônio H. + PedregosaFabian + van MulbregtPaul + SciPy 1.0 Contributors + + SciPy 1.0: Fundamental Algorithms for Scientific Computing in Python + Nature Methods + 2020 + 17 + 10.1038/S41592-019-0686-2 + 261 + 272 + + + + + + WeißeAlexander + WelleinGerhard + AlvermannAndreas + FehskeHolger + + The kernel polynomial method + Reviews of Modern Physics + 2006 + 78 + 10.1103/RevModPhys.78.275 + 275 + 306 + + + + + + ZhuJian-Xin + + Bogoliubov–de Gennes method and its applications + 2016 + 9783319313122 + 10.1007/978-3-319-31314-6 + + + + +