Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Mathematica Plotting Graphene in Mathematica

  1. Jul 2, 2015 #1
    I am encountering an issue when I plot attempting to plot 3d band structure of graphene in Mathematica. While the general shape and curvature looks fine, the cones at the K-points are not touching, which is an important qualitative electronic property of graphene. Since further down the line I want to test the effects of extra terms in the Hamiltonian, I need to first ensure that this is working as expected. Code is provided below:

    Code (Text):
    f[kx_, ky_,
       t_] := -t E^(-I kx a) (1 + 2 E^(I (3 kx a)/2)*Cos[Sqrt[3]/2 ky a]);

    GrapheneHam[kx_, ky_, t_] :=
      ComplexExpand[{{0, f[kx, ky, t]}, {Conjugate[f[kx, ky, t]], 0}}];

    Energies[kx_, ky_, t_] := Eigenvalues[GrapheneHam[kx,ky,t]];

    Plot3D[Energies[kx,ky, 2.8], {kx, -Pi/a, Pi/a},{ky, -Pi/a, Pi/a}]
    In this case the variable a is set to 2.46. Would anyone know if there is something in the syntax I am doing incorrectly, or perhaps the dispersion is being calculated wrong? Any help is appreciated. Thanks!
  2. jcsd
  3. Jul 2, 2015 #2
    It plots fine for me as long as I set a=2.46 at the beginning of the code
  4. Jul 2, 2015 #3
    That's strange. When I do it I get that the two surfaces never touch each other, which is what is supposed to happen at the six corners of the hexagon.
  5. Jul 2, 2015 #4
    Ok, I only meant that it plotted. Can't say if the plot is what you want though.
  6. Jul 7, 2015 #5
    I think it's an issue with PlotPoints, when I set them on 60 (fair bit of warning: this usually takes quite long to render), the peaks at the "hexagon" are much sharper, you could try experimenting with that. Tampering with the WorkingPrecision also seems to refine it even more, I've tried setting it to 5 and the gaps are almost unnoticeable.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook