Ignore:
Timestamp:
09/01/06 10:45:58 (18 years ago)
Author:
mar637
Message:

small fix to _format_pars to test for length. Ticket #44 - fit can be saved as ASCII via fitter.store_fit.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tags/Release2.1.0b/python/asapfit.py

    r974 r1230  
    5555                  }
    5656            comp.append(d)
     57            k+=1
    5758        out.append(comp)
    5859        return out
     60
     61    def save(self, filename):
     62        f = file(filename, 'w')
     63        parstr = ""
     64        for i in xrange(self.getcomponents()[0]):
     65            pname = "P%d"% (i)
     66            parstr += "%-12s " % (pname)
     67        header = "#%-12s %s\n" % ("Function", parstr)
     68        f.write(header)
     69        i = 0
     70        funcs=self.getfunctions()
     71        pars=self.getparameters()
     72        for c in self.getcomponents():
     73            line = " %-12s " % (funcs[i])
     74            for j in xrange(c):
     75                line += "%3.8f " % (pars[i*c+j])
     76            i+=1
     77            f.write(line+"\n")
     78        f.close()
    5979
    6080    def _format_pars(self, pars, ftype, unit):
     
    6383            i = 0
    6484            for p in pars:
    65                 out += ' p%d = %3.3f %s,' % (i,p,unit)
     85                out += ' p%d = %3.6f %s,' % (i,p,unit)
    6686                i+=1
    6787            out = out[1:-1]
    6888        elif ftype == 'gauss':
    69             out += 'peak = %3.3f , centre = %3.3f %s, FWHM = %3.3f %s' % (pars[0],pars[1],unit,pars[2],unit)
     89            out += 'peak = %3.6f , centre = %3.6f %s, FWHM = %3.6f %s' % (pars[0],pars[1],unit,pars[2],unit)
    7090        return out
Note: See TracChangeset for help on using the changeset viewer.