SFIT v2Simon Jeffery, Armagh Observatory
SFIT is a general-purpose code designed to optimize theoretical stellar spectra to an observed spectrum. Although based on models calculated with the Armagh Observatory LTE codes STERNE and SPECTRUM, it is flexible and can be adapted to other models. It has been proven to work well with both high and intermediate-dispersion normalized spectra. An important feature of the code is that several different parameter optimisation methods are available, including Levenburg-Marquardt, Amoeba, and Genetic Algorithms. It has also been designed for both single and composite (binary) stellar spectra.
Modes and Methods
SFIT currently has two [three] major modes of operation...:
... and four major methods of solution:
- slv (solve) -- fitting normalixed spectra in grid
- syn (synth) -- optimizing abundances in model spectrum
- [flx (flux) -- fitting observed flux distributions and photometry]
- chisq -- brute force minimum chi^2 in model grid
- levenburg -- levenburg-marquardt chi^2 minimization
- amoeba -- downhill simplex method
- genetic -- optimisation using a genetic algorithm
SLV In single star mode, solves for T, log g, abundance, v sin i, v rad by fitting model spectra to normalized spectra. The abundance variable depends on how the input grid is specified.
In double stars mode, solves for T 1, log g 1, abundance 1, v sin i 1, v rad 1, T 2, log g 2, abundance 2, v sin i 2, v rad 2 and R2/R1 by fitting model spectra to normalized spectra.
SYN Solves for elemental abundances and microturbulent velocity for a single spectrum, given an assumed model atmosphere.
FLX The flux fitting code FFIT has not yet been incorporated into SFIT.
Sfit may be run interactively from the terminal. If you have lte-codes installed, simply type
While Sfit accepts input from "stdio", it is more natural to save/edit commands in a file (eg "solve_input.sfit") and run the code simply by entering> Sfit solve_input.sfit [linelist]
The current default linelist (lines_woolf.d) is suitable for modelling high-resolution blue optical spectra of B and early A stars. Give the filename for an appropriate linelist if you need something different.
- Output is reported to the terminal.
- A summary is also copied to a file called SFIT.LOG.
- A summary of results is reported in a file called "SFIT.SUM"
- Results for individual input spectra ( <spec_name>) are saved as <spec_name>.slv-pars
- The best fit spectrum will be written out, with the input spectrum, to a file called <spec_name>.fit
Sfit Control Language (SCL)The sfit command syntax has evolved and is more stable and straightforward than in the past. Where subcommands could be used previously, these should still work but are not guaranteed. SCL should be thought of as a very specialized programming language. An sfit input file is an sfit program. Eventually, SCL will become common to all the LTE codes. The following features should be noted.
- >In general every operation can be achieved with a unique command.
- Strings beginning ! are treated as comments and ignored.
- Multiple commands may appear on the same line, the recognized separator is ";".
- Where a command requires an argument or parameter, it may either be given on the command line or it may be prompted for. The ommission of an optional argument results in a default value being assigned. NB. This aspect of SCL is not fully mature
- It is possible to define and run macros. This is very useful for performing an identical set of operations on large numbers of similar spectra.
- help file describes the syntax and function of each SCL command.
- The association of parameters with specific contexts is still maintained. For example, the instrumental broadening is associated with data (e.g. data_inst) while convergence tolerance is associated with the method (meth_tolerance).
- A classified list of SCL commands provides links to detailed descriptions of each command
Example 1. Setup model grid for use in coarse calibration of hot subdwarf spectra.
Example 2. Fit Teff, logg, lognHe, vsini and vrad to low-dispersion spectra of hot subwarfs. The model grid (3.4MB) produced by Example 1 and a selection of input spectra ( f008 f036 f068 f304 f354 ), together with SFIT output files are also given in this folder
Example 3.Setup model grid for use in fine calibration of a high resolution spectrum.
Example 4.Fit Teff, logg, lognHe, vsini and vrad to a high-dispersion spectrum of a hot helium star. The model grid (2.8MB) produced by Example 3 and an input spectrum together with SFIT output files are also given in this folder
Example 5.Fit selected abundances to the same spectrum assuming a STERNE model atmosphere. SFIT output files are also given in this folder
Example 6. Fit Teff_1, Teff_2 and radius ratio in composite spectrum binary binary, using saved model grids * WARNING - not tested *
This code was originally configured to run on both Linux and Alpha OSF/1 platforms. It has run successfully on both, but Linux is now the current default implementation.
This page is maintained by:
Simon Jeffery (firstname.lastname@example.org)
Last modified: Mon Oct 18 14:58:00 BST 2004