Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://star.arm.ac.uk/~csj/software_store/Howto_bruce.html
Дата изменения: Thu Aug 12 13:50:38 2004 Дата индексирования: Tue Oct 2 06:30:38 2012 Кодировка: Поисковые слова: annular solar eclipse |
Howto BRUCE
This document provides a brief summary on how to use the bits and pieces for the BRUCE codes as specifically implemented in Armagh.
Contents
- Codes Overview : a brief overview of codes
- BRUCE : an introduction to BRUCE
- KYLIE : an introduction to KYLIE
- SPECTRUM2TGK : an introduction to SPECTRUM2TGK
- Grids Overview : how to maintain the spectral grids used by KYLIE
- Contact : contact information for the author
Codes Overview
The codes are stored within the bruce-2.84-4/ directory. There is a complete copy of the BRUCE 2.84-4 distribution (as found on the BRUCE website), with a few modifications/additions:
There is a Makefile provided in the codes directory, which should compile everything. This Makefile requires editing so that it is correct for the appropriate platform (Linux or Alpha); it's pretty self-explanatory what to do.
- The utils subdirectory contains the source code for the program SPECTRUM2TGK, which is used to convert an intensity spectrum produced by SPECTRUM into the format required for the grids which KYLIE uses.
Once make has been run in the top-level codes directory, the following programs will be available:
Each of these programs is discussed below (follow the links!)
- bruce/bruce : the main BRUCE program, for calculating perturbed surface models.
- kylie/kylie : the main KYLIE program, for calculating synthetic spectra using results from BRUCE
- utils/spectrum2tgk the main SPECTRUM2TGK program, for constructing the grids which KYLIE uses.
BRUCE
To run BRUCE, use the following syntax:
bruce < IN_FILE > OUT_FILE
..where:
- IN_FILE
- is the name of input parameter file,
- OUT_FILE
- is the name of the file you want the diagnostic output to be written to.
The syntax of IN_FILE is explained in the appendix of my PhD thesis. Its reasonably self-explanatory, and to get you started, I've included the file example.bdf in the top-level directory. I use the extension ".bdf" for all of my BRUCE input files, the initials standing for "BRUCE definition file"; you might want to do this too. Have a look and play around!
KYLIE
KYLIE is run using the same method as BRUCE:
kylie < IN_FILE > OUT_FILE
..where:
As before, the syntax of IN_FILE is explained in the appendix of my PhD thesis; note that KYLIE input files use a different syntax to BRUCE ones. To get you started, I've included the file example.kdf in the top-level directory; here, the extension ".kdf" stands for "KYLIE definition file". The output from KYLIE is a set of 1-dimensional SDF spectra, suitable for reading into DIPSO (using the sp0rd command), or converting to FITS format (using the ndf2fits program in the CONVERT package)
- IN_FILE
- is the name of input parameter file,
- OUT_FILE
- is the name of the file you want the diagnostic output to be written to.
Note: If the dimensions of the spectral grid used by KYLIE are altered (in particular, if they grow significantly), then the file tgprof3.f, mentioned previously, will have to be edited, and KYLIE will then have to be recompiled using the instructions given above.
SPECTRUM2TGK
SPECTRUM2TGK is used to convert intensity spectra, produced by SPECTRUM, into the format required for one element of a spectral grid used by KYLIE. This format is basically a 2-dimensional SDF file containing the specific intensity, as a function of wavelength (in Angstroms) along the X-axis, and cosine angle (dimensionless) along the Y-axis.
Also produced is a 1-dimensional SDF file containing the flux, as a function of wavelength (in Angstroms); this file is not really needed by KYLIE, but is useful for inspection purposes. Use the command sp0rd within DIPSO to have a look at it.
To run SPECTRUM2TGK, use the following syntax:
spectrum2tgk SPECTRUM_FILE FLUX_FILE INTENSITY_FILE N_ANGLE
...where:
- SPECTRUM_FILE
- is the name of the intensity spectrum produced by SPECTRUM,
- FLUX_FILE
- is the name of the 1-dimensional SDF flux file to produce (without the .sdf extension),
- INTENSITY_FILE
- is the name of the 2-dimensional SDF intensity file to (without the .sdf extension),
- SPECTRUM_FILE
- is the name of the intensity spectrum produced by SPECTRUM
- N_ANGLE
- is the number of cosine angles present in SPECTRUM_FILE.
Note: INTENSITY_FILE must follow a specific naming convention, if the intensity file is to be used as part of a spectral grid.
Spectral Grids
The spectral grids used by KYLIE are currently stored within the bruce_example/grids/ directory. Inside this directory, there are individual subdirectories for each separate grid (ie, each collection of spectra with a given abundance & microturbulence). Currently, the only subdirectory is v05, which contains the 5km/s microturbulence grid for sub-dwarf B stars (25,000K<Teff<35,000K, 5.0<log g<6.0).
Within a grid subdirectory, there is the set of 2-dimensional SDF files, as created by SPECTRUM2TGK,one for each appropriate effective temperature and gravity, which together constitute the grid. These SDF files contain the specific intensity, as a function of wavelength (in Angstroms) along the X-axis, and cosine angle (dimensionless) along the Y-axis. The naming convention for these files is particularly important, and follows the convention tTTTgGGG_int.sdf, where
- TTT
- is the effective temperature of the intensity spectrum, expressed in units of 10^2 Kelvin,
- GGG
- is the logarithmic surface gravity of the intensity spectrum, expressed in units of 10^-2 dex.
Thus, for an effective temperature of 27,500K and a logarithmic surface gravity of 5.5dex, the filename of the intensity spectrum would be t275g550_int.sdf.
For KYLIE to use a spectral grid, a number of environment variables must first be set up (these are scanned by the spectral synthesis library routines within KYLIE). The appropriate variables are as follows:
The way KYLIE loads in a grid is this: the effective temperature is stepped from TGKIEL_TMIN to TGKIEL_TMAX in increments of TGKIEL_TINT, and the logarithmic surface gravity is stepped from TGKIEL_GMIN to TGKIEL_GMAX in increments of TGKIEL_GINT. For each resulting value of the temperature and gravity, the template TGKIEL_IGRID is used to construct a possible filename for an intensity spectrum. If this file actually exists, it is loaded by KYLIE; if it does not, no error is produced
- TGKIEL_IGRID
- This is a template for the filename of the intensity spectra. It takes the form PATH/t***g###_int, where PATH is the full pathname to the grid subdirectory, and the rest of the variable must appear as is (ie, with * and # symbols).
- TGKIEL_TMIN
- The minimum effective temperature of the grid, in Kelvin.
- TGKIEL_TMAX
- The maximum effective temperature of the grid, in Kelvin.
- TGKIEL_GMIN
- The minimum logarithmic surface gravity of the grid, in cgs dex.
- TGKIEL_GMAX
- The maximum logarithmic surface gravity of the grid, in cgs dex.
- TGKIEL_TINT
- The effective temperature interval between grid points, in Kelvin.
- TGKIEL_WMIN
- Useful only in expert mode; should usually be set to 0.
- TGKIEL_WMAX
- Useful only in expert mode; should usually be set to 0.
This way, KYLIE is able to read in grids with irregular boundaries which is especially useful when one is working close to the Eddington limit, and intensity spectra cannot be calculated below a certain surface gravity. The only real restriction on the intensity spectra within a grid is that they share the same wavelength axis; KYLIE will produce an error if they do not.
An example of how all these environment variables are used can be found in the file kylie_setup in the top level directory. This file sets up the variables for use of the grids/v05 grid mentioned above, and also creates some aliases to the codes within the bruce-2.84-1 subdirectory. To use the file, just source it from with a shell.
Note: If you're feeling adventurous, you should be able to figure out how to change TGKIEL_IGRID to permit a different naming convention for intensity spectra. But make sure everything is working with the "default" naming convention first!
Contact
If you have any problems running BRUCE or KYLIE, or any questions, feel free to email me at rhdt@star.ucl.ac.uk.
Rich Townsend -- 1 December 2000 Updated: Simon Jeffery -- 12 August 2004