Information on Service 'SP_ACE spectral analysis tool'

[Use this service from your browser]

Further access options are discussed below

SP_ACE computes stellar parameters (gravity, temperature) and element abundances from optical stellar spectra (sample spectrum). It employs 1D stellar atmosphere models in Local Thermodynamic Equilibrium (LTE).

The present service does not offer all the options available for SP_Ace as documented in the tutorial. All options are available if running SP_Ace locally (cf. download page).

This service exposes an updated version containing some bug fixes with respect to the one described in the paper.

For a list of all services and tables belonging to this service's resource, see Information on resource 'SP_ACE spectral analysis tool'

Service Documentation

This service's API is relatively easy to operate from user programs or scripts. The parameters available are identical to those of the interactive service except for the upload modalities. A parameter definition in a machine-readable VOTable is produced by the service itself at

To run the program offline, please refer to our download page

To run it, upload your radial-velocity-corrected continuum-normalised (!) spectrum (example) giving wavelengths in Angstrom vs. flux. Spectra of resolutions outside of the 2000 .. 20000 range will probably not yield reliable results.

Using curl, this would look like this:

curl -FUPLOAD=spectrum,param:up -Fup=@zw.asc\

Alternative functions or programs may, of course, be used as well. Further parameters would just add more -F options (but take care to use proper shell quoting).

This will give you VOTables, which are nice if the result is going to be processed with TOPCAT or astropy or similar. To get CSV, add a RESPONSEFORMAT parameter:

curl -FUPLOAD=spectrum,param:up -Fup=@zw.asc\

For convenient processing of multiple spectra, we recommend using Python with astropy and the requests package. The following code will print the abundances and global parameters for a spectrum in tmp/space/fast_spectrum.txt:

from cStringIO import StringIO
from import parse_single_table
import requests

r ="",
                data = {
                        "UPLOAD": "spectrum,param:file",
                        "compute_errors": "False"},
                files = {
                        "file": open("tmp/space/fast_spectrum.txt")})
t = parse_single_table(StringIO(r.content))
print t.array

for p in t.params:
        print, p.value

If you get messages about bad units, don't worry. By VOUnit, Astropy's wrong and we are right.

An additional hint: If you don't absolutely need the errors, don't make sp_ace compute them -- it's much faster without them, so that's the default. If you need errors, pass -Fcompute_errors=True.


You can access this service using:

This service is published as follows:

local means it is listed on our front page, ivo_managed means it has a record in the VO registry.

Other services provided on the underlying data include:

Input Fields

The following fields are available to provide input to the service (with some renderers, some of these fields may be unavailable):

NameTable Head DescriptionUnitUCD
abd_loop Use iterative loop? Switch on the loop that iteratively derives stellar parameters (Teff, log g, [M/H]) and chemical abundances. Suggestion: do not set (see Sec. 8.5.1 of the paper). If your spectrum has low resolution (R ~ 2000), see discussion in the tutorial. N/A N/A
alpha Aggregate alpha? If selected, the output will only contain two abundances: 'alphas' and 'metals', which are the estimation of the abundances of alpha-process elements and non-alpha-process elements as if they were one element. Hint: This option is mostly useful with low-resolution (R ~ 2000) spectra. See the tutorial for more details. N/A N/A
compute_errors Compute Errors? Make SP_Ace estimate errors (this increases runtime significantly). N/A N/A
fwhm Instr. FWHM Starting value for estimation of FWHM of the instrument line profile. Angstrom spect.line.width;instr
gforce Fixed gravity Force solver to assume this gravity. Leave empty to let SP_Ace estimate this parameter. N/A stat.param;phys.gravity
maxrec Match limit Maximum number of records returned. Pass 0 to retrieve service parameters. N/A N/A
no_norm Keep original normalization? Process the spectrum with the normalization provided by the user? This option switches off the internal re-normalization done by SP_Ace. Suggestion: Do not set unless you are absolutely sure that your normalization is right. N/A N/A
norm_rad Re-normalization parameter This parameter determines the flexibility of the curve used to fit the continuum during the re-normalization of the spectrum. The higher the number the more rigid the curve is (see discussion in the tutorial and in Sec.7.4 of the paper). Suggestion: leave the default value unless you know very well what you are doing. N/A N/A
responseformat Output Format File format requested for output. N/A meta.code.mime
rv_ini Initial RV estimate Provide an estimation of the object's radial velocity in case the spectrum is not RV-corrected. km/s spect.dopplerVeloc
snrforce Fixed SNR Force solver to assume this signal to noise ratio on every pixel. Suggestion: Leave empty to let SP_Ace to estimate this parameter pixel-by-pixel. N/A stat.param;stat.snr
spectrum Spectrum ASCII file with two columns: wavelength (in Angstrom) and continuum normalized flux. The spectrum must be radial velocity corrected (wavelengths in rest frame). The spectral resolution power should be between 2000 and 20000. SP_Ace handles spectra in the stellar parameters intervals Teff=[3600,7400]K, logg=[0.2,5.0], [M/H]=[-2.4,0.4]dex. N/A N/A
tforce Fixed Teff Force solver to assume this temperature. Leave empty to let SP_Ace estimate this parameter. K stat.param;phys;temperature.effective
verb Verbosity Exhaustiveness of column selection. VERB=1 only returns the most important columns, VERB=2 selects the columns deemed useful to the average user, VERB=3 returns a table with all available columns. N/A N/A
wave_lims Wave intervals Give up to five wavelength intervals you want to analyze, starting from the lowest. Intervals not covered by the library will be ignored. The default setting is the range of wavelenghts currently processed by the software. N/A N/A

Default Output Fields

The following fields are contained in the output by default. More fields may be available for selection; these would be given below in the VOTable output fields.

NameTable Head DescriptionUnitUCD
ab [El/H] Element abundance, logarithm of particle number relative to 1e12 H particles. N/A phys.abund
ab_low [El/H]- Lower limit of 68% confidence interval of element abundance N/A phys.abund
ab_up [El/H]+ Upper limit of 68% confidence interval of element abundance N/A phys.abund
element Element Element symbol N/A phys.atmol.element
nlines #lines Number of lines evaluated for this element. N/A

VOTable Output Fields

The following fields are available in VOTable output. The verbosity level is a number intended to represent the relative importance of the field on a scale of 1 to 30. The services take a VERB argument. A field is included in the output if their verbosity level is less or equal VERB*10.

NameTable Head DescriptionUnitUCD Verb. Level
element Element Element symbol N/A phys.atmol.element 10
ab [El/H] Element abundance, logarithm of particle number relative to 1e12 H particles. N/A phys.abund 10
ab_low [El/H]- Lower limit of 68% confidence interval of element abundance N/A phys.abund 10
ab_up [El/H]+ Upper limit of 68% confidence interval of element abundance N/A phys.abund 10
nlines #lines Number of lines evaluated for this element. N/A 10

If you use results obtained by this service, please cite the original publication (see source meta) and acknowlege: This work has made use of the sp_ace spectral analysis tool version 1.4.

VOResource XML (that's something exclusively for VO nerds)