C/C++ Quantum transport using the C++ library TBTK

AI Thread Summary
The discussion centers around the development of a C++ library called TBTK, designed for second-quantized models, and its integration with exercises from the book "Quantum Transport: Atom to Transistor" by S. Datta. The creator, who has a PhD focused on "Topological Band Theory and Majorana Fermions," explains that the library evolved from tight-binding calculations conducted during their doctoral research. The aim of TBTK is to provide general-purpose data structures for quantum mechanical problems, addressing a gap in systematic development within the scientific community. This initiative is intended to facilitate the creation of new algorithms and improve integration with existing computational packages, promoting collaboration among developers in the field. A promotional video is available to introduce the library's core philosophy.
dafer45
Messages
3
Reaction score
1
Hi,

I'm working on a C++ library for second-quantized models called TBTK (https://github.com/dafer45/TBTK). To make it easy for people to get started using the library, I have recently begun implementing solutions to the exercises in the book "Quantum transport: Atom to Transistor, S. Datta (2005)" that uses the library (https://github.com/dafer45/DattaQuantumTransportAtomToTransistor).

I'm looking forward to interact with interested developers. Let me know your thoughts.
 
Technology news on Phys.org
Welcome to the PF. :smile:

What did you do your PhD in, and what was the subject of your dissertation? Was it in this area?
 
  • Like
Likes dafer45
Thanks for the welcome greeting :)

My PhD thesis is on "Topological band theory and Majorana fermions" (http://www.diva-portal.org/smash/get/diva2:1034719/FULLTEXT01.pdf). The library originated from the tight-binding calculations that I did during this time and a short overview of the state of the code at the time of my defense is available in Chapter 6. However, the data structures I developed were general enough to allow me to expand the scope of the library. It is now more broadly aimed at providing data structures for problems formulated in the language of second-quantization in general.

My motivation for this development is the observation that much of the scientific community has developed a lot of algorithms over the years. But little systematic development of general purpose data structures for quantum mechanical problems has occurred. By providing such data structures I aim to facilitate the development of new algorithms, as well as front ends and back ends to already existing packages. Thereby I hope to enable seamless integration of the algorithms that are used in the community.
 
  • Like
Likes berkeman
A brief introduction to the core philosophy can be found in this promo video
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...
Back
Top