Plotting Band Structure in Graphene for Scientists

In summary, the conversation discusses how to plot a tight-binding dispersion for graphene in a specific path, and the user shares their code for doing so. They also mention difficulties with plotting the band structure in 3D and ask for help with creating a similar graph.
  • #1
barana
18
0
I just learned how to get a tight-binding dispersion for graphene.
But i can not figure out how can I plot that. I want to plot that in the following path: Γ→K→M→Γ
I would be appreciated if could some one give me a hand on my problem.
thanks for alot.
 
Physics news on Phys.org
  • #2
barana said:
I just learned how to get a tight-binding dispersion for graphene.
But i can not figure out how can I plot that. I want to plot that in the following path: Γ→K→M→Γ
I would be appreciated if could some one give me a hand on my problem.
thanks for alot.

What do you mean that you can't figure out how to plot the band?

If you are going along one particular axis, set one of the kx, let's say, set ky=0 and plug that into your dispersion equation. If you are plotting along the zone diagonal, set kx=ky and off you go. Do the same for other high-symmetry directions.

Zz.
 
  • #3
Thank you very much. Your answer was useful.
 
  • #4
ZapperZ said:
What do you mean that you can't figure out how to plot the band?

If you are going along one particular axis, set one of the kx, let's say, set ky=0 and plug that into your dispersion equation. If you are plotting along the zone diagonal, set kx=ky and off you go. Do the same for other high-symmetry directions.

Zz.
Best wishes and Thank you again.
I have Hamiltonian matrix and overlap matrix. How to calculate tight binding dispersion for graphene in matlab?
I would be appreciated if could some one give me a hand on my problem.
 
  • #5
But ZapperZ told you already. Just take kx=ky=t and plot E(t).
 
  • #6
Could you elaborate a little more? Is your question about the physics of tight binding calculations or about implementing tight binding calculations in MATLAB?
 
  • #7
ConradAveraging said:
Could you elaborate a little more? Is your question about the physics of tight binding calculations or about implementing tight binding calculations in MATLAB?
implementing tight binding calculation in matlab.
matlab cose in the following path: Γ→K→M→Γ is:
Nk=20;
t=-2.550;
for ik=1:Nk+1
k_x=2*pi*(ik-1)/Nk*0;
k_y=2*pi*(ik-1)/Nk*0.667;
H=zeros(2);
H(1,2)=t*(exp(-1i*k_x/sqrt(3))+exp(1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
H(2,1)=t*(exp(1i*k_x/sqrt(3))+exp(-1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(-1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
[V,D]=eig(H)
E_1(ik)=D(1,1)
E_2(ik)=D(2,2)
end
plot(E_1)
hold on
plot(E_2)
Nk=20;
t=-2.550;
for ik=21:Nk+10
k_x=2*pi*(ik-1)/Nk*0;
k_y=2*pi*(ik-1)/Nk*-0.667;
H=zeros(2);
H(1,2)=t*(exp(-1i*k_x/sqrt(3))+exp(1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
H(2,1)=t*(exp(1i*k_x/sqrt(3))+exp(-1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(-1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
[V,D]=eig(H)
E_1(ik)=D(1,1)
E_2(ik)=D(2,2)
end
plot(E_1)
hold on
plot(E_2)
Nk=20;
t=-2.550;
for ik=31:Nk+20
k_x=2*pi*(ik-1)/Nk*0.557;
k_y=2*pi*(ik-1)/Nk*0;
H=zeros(2);
H(1,2)=t*(exp(-1i*k_x/sqrt(3))+exp(1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
H(2,1)=t*(exp(1i*k_x/sqrt(3))+exp(-1i/(2*sqrt(3))*((k_x+sqrt(3)*k_y)))+exp(-1i/(2*sqrt(3))*(k_x-sqrt(3)*k_y)));
[V,D]=eig(H)
E_1(ik)=D(1,1)
E_2(ik)=D(2,2)
end
plot(E_1)
hold on
plot(E_2)
but in the following path: K→Γ→M→K not true.
Nk is The number of points between two points K and Γ.
 
  • #8
It looks like your not selecting the correct k points on your last for loop. If you're mainly interested in the band structure and not the wavefunctions you can cut through Γ,K, and M in one line, with M being in 2BZ, which is a direction similar to your first for loop. But if you want to look at different symmetry points, I usually define the coords of Γ,K,M, then define a vector that connects them like v1=K-Γ. I can't tell you if you've selected the correct symmetry points because that depends how you build your lattice
 
  • #9
graphene lattice is:
upload_2015-4-22_11-6-50.png
 

Attachments

  • upload_2015-4-22_11-6-32.png
    upload_2015-4-22_11-6-32.png
    13.4 KB · Views: 1,216
  • #10
ok. So if you set kx=0, and iterate ky you will plot through all the symmetry points. Also, K=(b1-b2)/3, K'=(2*b2+b1)/3, M=(b2+b1)/2. I would also suggest that you plot your path in k-space as a check.
 
  • #11
ConradAveraging said:
ok. So if you set kx=0, and iterate ky you will plot through all the symmetry points. Also, K=(b1-b2)/3, K'=(2*b2+b1)/3, M=(b2+b1)/2. I would also suggest that you plot your path in k-space as a check.
Thank you very much.
I'm able to plot the 2D for graphene on matlab.
matlab code is:
close all
clear all
clc
t=-2.550;
acc=1.44e-10;
a=1.732*acc;

s=0:0.02:1
k_x=(2*pi/(sqrt(3)*a))*(1-s)
k_y=(2*pi/(3*a))*(1-s)
E1=t.*sqrt(1+4.*cos((sqrt(3).*a/2).*k_x).*cos((a/2).*k_y)+4.*cos((a/2).*k_y).^2)
E2=-E1;
plot(E1,'*')
hold on
plot(E2,'*')

s=0:0.02:1
k_x=(2*pi/(sqrt(3)*a))*s
k_y=0
E1=t.*sqrt(1+4.*cos((sqrt(3).*a/2).*k_x).*cos((a/2).*k_y)+4.*cos((a/2).*k_y).^2)
E2=-E1;
plot(E1,'*')
hold on
plot(E2,'*')

s=0:0.02:1
k_x=(2*pi/(sqrt(3)*a))
k_y=(2*pi/(3*a))*s
E1=t.*sqrt(1+4.*cos((sqrt(3).*a/2).*k_x).*cos((a/2).*k_y)+4.*cos((a/2).*k_y).^2)
E2=-E1;
plot(E1,'*')
hold on
plot(E2,'*')
but I can not draw diagrams tandem.
 
  • #12
Just concatenate E = [E1 E2 E3]
 
  • #13
ConradAveraging said:
Just concatenate E = [E1 E2 E3]
The problem was solved
thanks
 
  • #14
Hi dear friends.
I'm able to plot graphene banstructure in 2D, by this code:
*****************************************************************************************
%Plot of Energy dispersion trial1.m
x=linspace(-2.5,2.5,50); y=linspace(-9,10,20);
[a,b]=meshgrid(x,y)
z= 3.033*sqrt(1+4*cos(b*0.1*pi).*cos(a*1.2283)+4*(cos(a*1.2283)).^2);
zz=- 3.033*sqrt(1+4*cos(b*0.1*pi).*cos(a*1.2283)+4*(cos(a*1.2283)).^2);
figure,plot(x,z)
title('Energy dispersion relation of graphene')
xlabel('K(1/A)'),ylabel(' Energy of graphene(ev)')
hold on
plot(x,zz)
***************************************************************************************
But now I'm trying to have graphene bandstructure in 3D like this:
Graphene_pi_bandstructure.png

But I can't do this.
Can you give me the MATLAB code for 3D-Bandstructure?
 
  • #15
@sina67 ... here's a modified code for 3d plot:
%Plot of Energy dispersion trial1.m
x=linspace(-2.5,2.5,50);
y=linspace(-9,10,20);
[a,b]=meshgrid(x,y)
z= 3.033*sqrt(1+4*cos(b*0.1*pi).*cos(a*1.2283)+4*(cos(a*1.2283)).^2);
zz=- 3.033*sqrt(1+4*cos(b*0.1*pi).*cos(a*1.2283)+4*(cos(a*1.2283)).^2);
figure
surf(a,b,z)
title('Energy dispersion relation of graphene')
xlabel('K(1/A)'),ylabel(' Energy of graphene(ev)')
hold on
surf(a,b,zz)
 
  • Like
Likes Douasing
  • #16
Can anyone write a MATLAB code for the 3D band structure from the Hamiltonian matrix? Not the one from the explicit expression for the eigenvalue, but just from the Hamiltonian to 3D plot. Thanks a lot!
 
  • #17
just a thought
Years ago I was working on graphite intercalation compounds. Did Fermi surface study. Then, made 2-D band structure calculations and found out that to get a good fit I had to include second nearest neighbour interactions within the tight binding model.
 
  • #18
Barana, what is a and acc?
 

Related to Plotting Band Structure in Graphene for Scientists

What is band structure and why is it important?

Band structure refers to the distribution of energy levels, or bands, in a material. It provides important information about the electronic properties of a material, such as its conductivity and optical properties. Understanding band structure is crucial for designing new materials and predicting their behavior.

What are the steps involved in plotting band structure?

The first step is to obtain the energy levels of the material using a method such as density functional theory. Then, these energy levels are plotted against the momentum or wave vector of the electrons in the material. This is typically done using computer programs such as VASP or Quantum ESPRESSO. The final step is to analyze and interpret the resulting band structure plot.

What factors can affect the band structure of a material?

The band structure of a material can be influenced by various factors, such as the type of atoms present, the arrangement of atoms in the crystal lattice, and external conditions such as temperature and pressure. Additionally, the band structure can also be modified by introducing impurities or defects in the material.

How can band structure be used in materials design and research?

Band structure calculations can provide valuable insights into the electronic properties of a material, which can be used to guide the design of new materials with specific properties. It can also be used to study the effects of different parameters on the band structure, aiding in the development of new technologies and materials.

Are there any limitations to band structure calculations?

While band structure calculations are a powerful tool in materials science, they are not without limitations. These calculations are based on theoretical models and approximations, and may not accurately reflect the true behavior of a material. Additionally, the accuracy of the results can be affected by the quality of the input data and the computational methods used.

Similar threads

  • Atomic and Condensed Matter
Replies
6
Views
2K
  • Atomic and Condensed Matter
Replies
3
Views
2K
  • Atomic and Condensed Matter
Replies
9
Views
4K
  • Atomic and Condensed Matter
Replies
4
Views
1K
  • Atomic and Condensed Matter
Replies
1
Views
1K
  • Atomic and Condensed Matter
Replies
2
Views
1K
  • Atomic and Condensed Matter
Replies
2
Views
1K
  • Atomic and Condensed Matter
Replies
3
Views
1K
  • Atomic and Condensed Matter
Replies
1
Views
1K
  • Programming and Computer Science
Replies
15
Views
2K
Back
Top