Hi, I am using Athena in Windows and I have been having trouble with some project files. I would like to determine the cause: after closing the original file I am unable to reopen the project file again properly. I have attached a file to demonstrate the problem (test1.prj) Saving different versions does not help. When I open the file, no spectrum is displayed. (If I click on a file during the importing then that spectrum will remain displayed). At the bottom the "removing background..." never says "done". It seems like everything is working except the graphing window. I haven't been able to determine what is different about this data from other data that opens without any problem. I would appreciate any help with this. Thanks, Lisa Lisa Van Loon, Ph.D. Industrial Research Scientist lisa.vanloon@lightsource.ca
Lisa, I concur that there is something amiss when I try to read in the project file you sent me, although it is not immediately obvious what the problem is. I will look into it and let you know, although it may take me a few days since I am on travel right now and will be very busy the next two days. B On Tuesday 12 January 2010 05:22:25 pm Lisa Van Loon wrote:
Hi,
I am using Athena in Windows and I have been having trouble with some project files. I would like to determine the cause: after closing the original file I am unable to reopen the project file again properly. I have attached a file to demonstrate the problem (test1.prj) Saving different versions does not help. When I open the file, no spectrum is displayed. (If I click on a file during the importing then that spectrum will remain displayed). At the bottom the "removing background..." never says "done". It seems like everything is working except the graphing window. I haven't been able to determine what is different about this data from other data that opens without any problem. I would appreciate any help with this.
Thanks, Lisa
Lisa Van Loon, Ph.D. Industrial Research Scientist lisa.vanloon@lightsource.ca
-- Bruce Ravel ----------------------------------- bravel@bnl.gov National Institute of Standards and Technology Synchrotron Measurements Group, Beamlines X23A2, X24A, U7A Building 535A, Room M7 Brookhaven National Laboratory Upton NY, 11973, USA My homepage: http://xafs.org/BruceRavel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/
On Tuesday 12 January 2010 05:22:25 pm Lisa Van Loon wrote:
I am using Athena in Windows and I have been having trouble with some project files. I would like to determine the cause: after closing the original file I am unable to reopen the project file again properly. I have attached a file to demonstrate the problem (test1.prj) Saving different versions does not help. When I open the file, no spectrum is displayed. (If I click on a file during the importing then that spectrum will remain displayed). At the bottom the "removing background..." never says "done". It seems like everything is working except the graphing window. I haven't been able to determine what is different about this data from other data that opens without any problem.
Lisa, Wow. This was a tricky one. I had to follow several false leads before actually figuring out the problem here. Here's the story: At one point in the process of importing data from a file, header lines get truncated to 256 characters if they are longer than that. Several of the header lines in your orginal data files (in a separate email, Lisa sent me the original data files) are longer than 256. That by itself is not a problem. However, when some of these long header files were truncated, you had the misfortune of having the 256th character come after an open parens and before a close parens. This triggered a problem in Ifeffit that it has when it encounters an unmatched and unescaped open parens in a character string. Way back in the early days of Athena (maybe 6 years ago or more), this was a serious issue leading to all sorts of troubled and unhappy users. I thought I had fixed the problem, but apparently I only fixed the most common examples of this problem. Your specific data files represented an edge case that slipped through the cracks. Sigh. I now have things fixed. Not only do your data files no longer lead to a project file displaying this problem, I even figured out a way to fix your broken project on the fly. Sadly, there is no work-around for you in Athena. The only immediate solution is unpleasent -- you will have to edit each offending file by hand and remove the very long header lines. Ick! I will build a new Windows executable soon which incorporates the fix and make it available to the automated updater. However this will take a few days as I have another Athena improvement that needs to get written and tested before I make the release. I am working on that right now, so I am hopeful that I'll have a new version by next week. I hope. Sorry for the hassle. Thanks *very much* for complaining about it. As I have said many many times, the extent to which my programs are any good at all is a tribute to the kidn and helpful feedback that I have received from all the users. Regards, B P.S. While I am at it, I'll look into the issue of non-ascii characters in filenames that Mingliang asked about earlier today. -- Bruce Ravel ------------------------------------ bravel@bnl.gov National Institute of Standards and Technology Synchrotron Methods Group at NSLS --- Beamlines U7A, X24A, X23A2 Building 535A Upton NY, 11973 My homepage: http://xafs.org/BruceRavel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/
Hi Bruce, Was the problem an ifeffit problem -- truncating strings and then not recognizing them?? If so, what happened?
P.S. While I am at it, I'll look into the issue of non-ascii characters in filenames that Mingliang asked about earlier today.
I think this is an Ifeffit problem. Well, you could change
directories before reading the file, or avoid read_data() all together
(which would help avoid problems of non-ASCII characters in the file
name itself or in the file contents). But I think that if a Fortran
open is used, the problem is not easily solvable.
--Matt
On Wed, Jan 20, 2010 at 1:08 PM, Bruce Ravel
On Tuesday 12 January 2010 05:22:25 pm Lisa Van Loon wrote:
I am using Athena in Windows and I have been having trouble with some project files. I would like to determine the cause: after closing the original file I am unable to reopen the project file again properly. I have attached a file to demonstrate the problem (test1.prj) Saving different versions does not help. When I open the file, no spectrum is displayed. (If I click on a file during the importing then that spectrum will remain displayed). At the bottom the "removing background..." never says "done". It seems like everything is working except the graphing window. I haven't been able to determine what is different about this data from other data that opens without any problem.
Lisa,
Wow. This was a tricky one. I had to follow several false leads before actually figuring out the problem here.
Here's the story:
At one point in the process of importing data from a file, header lines get truncated to 256 characters if they are longer than that. Several of the header lines in your orginal data files (in a separate email, Lisa sent me the original data files) are longer than 256. That by itself is not a problem. However, when some of these long header files were truncated, you had the misfortune of having the 256th character come after an open parens and before a close parens. This triggered a problem in Ifeffit that it has when it encounters an unmatched and unescaped open parens in a character string.
Way back in the early days of Athena (maybe 6 years ago or more), this was a serious issue leading to all sorts of troubled and unhappy users. I thought I had fixed the problem, but apparently I only fixed the most common examples of this problem. Your specific data files represented an edge case that slipped through the cracks.
Sigh.
I now have things fixed. Not only do your data files no longer lead to a project file displaying this problem, I even figured out a way to fix your broken project on the fly.
Sadly, there is no work-around for you in Athena. The only immediate solution is unpleasent -- you will have to edit each offending file by hand and remove the very long header lines. Ick!
I will build a new Windows executable soon which incorporates the fix and make it available to the automated updater. However this will take a few days as I have another Athena improvement that needs to get written and tested before I make the release. I am working on that right now, so I am hopeful that I'll have a new version by next week. I hope.
Sorry for the hassle. Thanks *very much* for complaining about it. As I have said many many times, the extent to which my programs are any good at all is a tribute to the kidn and helpful feedback that I have received from all the users.
Regards, B --
Bruce Ravel ------------------------------------ bravel@bnl.gov
National Institute of Standards and Technology Synchrotron Methods Group at NSLS --- Beamlines U7A, X24A, X23A2 Building 535A Upton NY, 11973
My homepage: http://xafs.org/BruceRavel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/ _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
On Wednesday 20 January 2010 03:23:39 pm you wrote:
Was the problem an ifeffit problem -- truncating strings and then not recognizing them?? If so, what happened?
Yes, it was. Here's a "screenshot" of the simplest demonstration: bruce@clotho [horae] > ifeffit Ifeffit 1.2.11d Copyright (c) 2008 Matt Newville, Univ of Chicago command-line shell version 1.1 with GNU Readline Ifeffit> set $text = 'bad string ( bad' ... > Since a lot of text gets sent to Ifeffit all at once, the only way for Athena to avoid this problem is to make sure before sending text that all parens get closed. The reason that Athena sends large blocks of text rather than sending text line by line and testing the state of Ifeffit is for performance reasons. The Ifeffit::ifeffit subroutine is almost always the slowest part of anything my codes do, with the possible exception of the Ifeffit::get_echo subroutine. Sending lareg blocks of text is an enormous perfomance enhancement.
P.S. While I am at it, I'll look into the issue of non-ascii characters in filenames that Mingliang asked about earlier today.
I think this is an Ifeffit problem. Well, you could change directories before reading the file, or avoid read_data() all together (which would help avoid problems of non-ASCII characters in the file name itself or in the file contents). But I think that if a Fortran open is used, the problem is not easily solvable.
Hmm... good point. Changing directories, reading the file, changing back is a good idea, though. However, it will not solve the issue of data files themselves which contain non-ascii characters. In either case, Athena could and should do an analysis of the filename to determine if this is a problem and then post a /useful/ error message. B -- Bruce Ravel ------------------------------------ bravel@bnl.gov National Institute of Standards and Technology Synchrotron Methods Group at NSLS --- Beamlines U7A, X24A, X23A2 Building 535A Upton NY, 11973 My homepage: http://xafs.org/BruceRavel EXAFS software: http://cars9.uchicago.edu/~ravel/software/exafs/
participants (3)
-
Bruce Ravel
-
Lisa Van Loon
-
Matt Newville