[Ifeffit] Bug report

Matt Newville newville at cars.uchicago.edu
Tue Jun 7 09:33:32 CDT 2005


Hi Scott, 

Yep, that is an ifeffit error.  It turns out to be specific to
math expressions in path() commands, but it is definitely a bug.  
It seems that a math expression for a path parameter that starts
with '(' and ends with ')' and for which these '(' and ')' are
not a matched pair will incorrectly raise a syntax error.  This 
doesn't happen for set() or def().

I think this is an historical accident (that is it got fixed a
long time ago for set() and def() and never got fixed for
path()).  It seems easy to fix, though I should probably test it
carefully, and I don't know that I'll have Windows dlls soon. It
also seems easy to work around.  Let me know if it isn't.
 
Anyway, thanks!!

--Matt

On Mon, 6 Jun 2005, Scott Calvin wrote:

> Hi Bruce and Matt,
> 
> I've just spent a few hours trying to track down a bug that showed up in
> one of my complicated Artemis files. I've boiled it down to the point where
> I can make it happen in one of the example files, although of course in
> this context it looks a little pointless.
> 
> At any rate, take Ifeffit/examples/Artemis/Cu/oneshell.apj, and change the
> sigma2 for path 1 to:
> 
> (1)*sigsqr + signor*(1)
> 
> and run a fit.
> 
> For me, that generates the ifeffit message:
> 
> path(1, sigma2 = (1)*sigsqr + signor*(1))
> syntax error:        (1)*sigsqr)+signor*((1)
> parentheses not used properly
> 
> and causes a sigma2 of 0 to be used. Artemis doesn't report any error; you
> have to look in the ifeffit buffer or notice that you're getting a funny
> value of sigma2 (i.e. 0) assigned to path 1. 
> 
> Now change the sigma2 to read:
> 
> (1)*sigsqr + signor*(1)*1
> 
> and everything works fine. Weird, huh?
> 
> I'm using Artemis 0.7.015 and ifeffit 1.2.7 on Windows XP.
> 
> --Scott Calvin
> Sarah Lawrence College
> _______________________________________________
> Ifeffit mailing list
> Ifeffit at millenia.cars.aps.anl.gov
> http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
> 






More information about the Ifeffit mailing list