[Ifeffit] Demeter-devel MacPorts Athena issues & work-around

Bruce Ravel bravel at bnl.gov
Sun Jul 6 17:24:25 CDT 2014


Matt,

You're right.  I was too grouchy.  Margaret Anne, I apologize if I was 
too mean-spirited in my emails over the weekend.


On 07/06/2014 05:54 PM, Matt Newville wrote:
> Wait, what?   What text string is configured to be only 256 characters?
> Something must be very wrong with the Macports installation - this file
> opens just fine for me, though I haven't tested it with the Macports
> version.
>
> The "read_data()" command in ifeffit uses a line length of 2048
> characters, and should not crash on a longer line, but truncate lines to
> 2048 characters (silently, which is irritating when encountered, but not
> as bad as crashing).     I've written and used thousands of data files
> with comment and data lines longer than 256 characters.    I believe
> there is (and should be) nothing in the code for reading data that sets
> a limit as low as 256 characters (File names are allowed to be 512
> characters!), and nothing that should cause a crash on larger lines.
>
> Of course it's fine to use a plugin for specific file types, and
> probably wise to not rely of ifeffit's read_data() for really big files
> (though, again, I regularly read files of 35 to 40 columns without a
> plugin).   But this seems to me like its a Macports-only problem to me
> that should be fixed.

I guess I explained it poorly, but it is not a MacPorts-only problem.

It /opens/ just fine.  That's not the problem.

It's a problem with iff_show, which Athena uses to fetch the names of 
the column labels after ifeffit reads the data file.  Here's what 
happens if you exercise iff_show by hand:

bruce at atropos [demeter] > ifeffit
  Ifeffit  1.2.11d Copyright (c) 2008 Matt Newville, Univ of Chicago
                 command-line shell version 1.1 with GNU Readline
Ifeffit> read_data 
(file="/home/bruce/Mn0214_7dMnO2_Header_exafsscan1.dat", group=a)
Ifeffit> show @strings
  $plot_devices  = /png /tpng /null /ps /vps /cps /vcps /xwindow /xserve
  $plot_device   = /xserve
  $group         = a
  $commentchar   = #
  $&build        = 1.2.11d Copyright (c) 2008 Matt Newville, Univ of Chicago
  $&install_dir  = /usr/local/share/ifeffit
  $column_label  = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 
46 47 48 49 50 51 52 53 54 55 56 57
  $column_label1 = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 
46 47 48 49 50 51 52 53 54 55 56 57
  $a_title_01    = S 1  exafsscan
  $a_title_02    = C exafs_edge_energy 6.539
  $a_title_03    = C exafs_region -150 -20 26 1 0 0 0
  $a_title_04    = C exafs_region -20 34.1959 108 1 0 0 0
  $a_title_05    = C exafs_region 34.1959 972.683 260 1 0 1 1.4
  $a_title_06    = D Wed Feb 26 22:19:02 2014
  $a_title_07    = T 4.58834  (Seconds)
  $a_title_08    = G0 0
  $a_title_09    = G1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0
  $a_title_10    = G3 0 0 0 0 0 0 0 0 0
  $a_title_11    = G4 0
  $a_title_12    = Q
  $a_title_13    = P0 17.707645 -0.3425 33.862069 -0.80317213 -18.366667 
0.175013 -0.175013 8.99922
  $a_title_14    = P1 8.49884 8.74903 -5.0037582 8.74903 1.7763568e-14 0 
3.5002457 9.4148
  $a_title_15    = P2 -44.9992 -23.95 -30.75 97.52 19.252 -11.58 8.4175 
-2.25125
  $a_title_16    = P3 -5.11125 1.4875 0.7325 1.5 85 0 -600
  $a_title_17    = N 57
At line 436 of file iff_show.f
Fortran runtime error: End of record
bruce at atropos [demeter] >


Line 436 of iff_show is

        write(messg,11)  s(1:k), ' = ', t(1:j)

messg is defined just above that as character*256.  I interpreted this 
as attempting to put a 330 character string in a character*256 variable. 
  But, in truth, I did not examine the code all that closely.

I suppose I could have worked on fixing Ifeffit, but the plugin took way 
less time.  And my time would be better spent making Demeter use Larch 
properly.

B



-- 
  Bruce Ravel  ------------------------------------ bravel at bnl.gov

  National Institute of Standards and Technology
  Synchrotron Science Group at NSLS --- Beamlines U7A, X24A, X23A2
  Building 535A
  Upton NY, 11973

  Homepage:    http://xafs.org/BruceRavel
  Software:    https://github.com/bruceravel



More information about the Ifeffit mailing list