[Wannier] Error in plotting fermi surface

Jonathan Yates jry20 at cam.ac.uk
Sat Mar 24 23:59:21 CET 2007


On Sat, 24 Mar 2007, Brad Malone wrote:

> Hi, I'm getting an error while trying to plot the fermi surface.  It says
> "Error in allocating eig_int in plot_fermi_surface".  I'm trying to generate
> a 100x100x100 grid, and I didn't get this error for 50x50x50.  Is this some
> issue with memory or something?  And is there a way for me to get around it?

Brad,

  Failure to allocate an array generally means you've run out of RAM.

  In this case the array eig_int will be rather large; you can estimate 
its size in Mb with
  fermi_surface_num_points**3 x num_wann x 8 / (1024^2)
  Clearly there are a lot of other arrays taking up memory, but if eig_int 
is comparable, or much larger than the RAM of the your machine, you're 
going to be in trouble.

  A trivial solution is to find a machine with more RAM!

  The more elegant solution is to modify the code. The reason why the 
routine tries to store all the eigenvalues in memory is just so it can 
re-arrange the data into a form XCrysden can read.

  I seem to remember you're interested in the eigenvalues, rather than 
getting nice Fermi surface plot. In that case you could modify the 
plot_fermi_surface routine to write the eigenvalues out to a file as you 
go along, rather than storing them.

  I think this should be a trivial modification to make. (send a mail to 
myself and Arash if you want to discuss this in more detail - I think the 
technical details will get a bit off-topic for the list).

  Yours
    Jonathan


-- 
Dr Jonathan Yates         |    Theory of Condensed Matter Group
Corpus Christi College    |    Cavendish Laboratory
Cambridge, CB2 1RH, UK    |    Cambridge, CB3 OHE, UK
email jry20 at cam.ac.uk     |    Tel +44 (0)1223 337461




More information about the Wannier mailing list