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
 
Thread 'Star maps using Blender'
Blender just recently dropped a new version, 4.5(with 5.0 on the horizon), and within it was a new feature for which I immediately thought of a use for. The new feature was a .csv importer for Geometry nodes. Geometry nodes are a method of modelling that uses a node tree to create 3D models which offers more flexibility than straight modeling does. The .csv importer node allows you to bring in a .csv file and use the data in it to control aspects of your model. So for example, if you...
I tried a web search "the loss of programming ", and found an article saying that all aspects of writing, developing, and testing software programs will one day all be handled through artificial intelligence. One must wonder then, who is responsible. WHO is responsible for any problems, bugs, deficiencies, or whatever malfunctions which the programs make their users endure? Things may work wrong however the "wrong" happens. AI needs to fix the problems for the users. Any way to...
I am trying to run an .ipynb file and have installed Miniconda as well as created an environment as such -conda create -n <env_name> python=3.7 ipykernel jupyter I am assuming this is successful as I can activate this environment via the anaconda prompt and following command -conda activate <env_name> Then I downloaded and installed VS code and I am trying to edit an .ipynb file. I want to select a kernel, via VS Code but when I press the button on the upper right corner I am greeted...
Back
Top