astro-ph/0010533


POPRATIO: A PROGRAM TO CALCULATE ATOMIC LEVEL POPULATIONS IN ASTROPHYSICAL PLASMAS

A. I. Silva and S. M. Viegas


Instituto Astronômico e Geofísico, Universidade de São Paulo, Av. Miguel Stéfano, 4200, 04301-904 São Paulo SP, Brazil
E-mail: ignacioalex@yahoo.com
E-mail: viegas@iagusp.usp.br


Abstract: We describe a Fortran 90 program to calculate population ratios of atomic levels. The program solves the equations of statistical equilibrium considering all possible bound-bound processes: spontaneous, collisional or radiation induced (the later either directly or by fluorescence). There is no limit on the number of levels or in the number of processes that may be taken into account. The program may find a wide range of applicability in astronomical problems, such as interpreting fine-structure absorption lines or collisionally excited emission lines (such as coronal emission lines) in the spectra of several objects, and also in calculating the cooling rates due to collisional excitation.

PACS: 95.30.Dr; 98.38.Bn; 98.58.Bz


Key words:
Level populations, statistical equilibrium equations, fine structure lines, collisionally excited lines, coronal lines, cooling rates.

PROGRAM SUMMARY

Title of program: PopRatio

Catalogue identifier:

Program obtainable from: http://www.iagusp.usp.br/~alexsilv/popratio

Computer for which the program is designed and others on which it has been tested:

Computer: Intel Pentium Pro 200 MHz PC

Installation: Instituto Astronômico e Geofísico, Universidade de São Paulo.

Operating system under which the program has been tested: DOS, Windows 95.

Programming language used: Fortran 90.

Memory required to execute with typical data:
2,055 kbytes

No. of bits in a word: 32

No. of processors used: One

Has the code been vectorised or parallelized?: No

No. of bytes in distributed program, including test data, etc.:
981 058

Distribution format:

Keywords:
Level populations, statistical equilibrium equations, fine structure lines, collisionally excited lines, coronal lines, cooling rates.

Nature of physical problem:
The purpose of this program it to calculate population ratios of atomic levels. The excited level population ratios may be used to infer the physical conditions from observed fine-structure absorption lines or collisionally excited emission lines (such as coronal emission lines). Another possible use is in calculating cooling rates due to collisional excitation of low-lying levels.

Method of Solution:
The necessary atomic data is read from a separate input file. Next, the rates for all the bound-bound processes involved are evaluated and the system of equilibrium equations is solved. Several processes may be taken into account: spontaneous, collisions with an arbitrary number of particles, excitation or stimulated emission induced by radiation fields (either directly or by fluorescence). Built in radiation fields provided are: a black body (such as the cosmic microwave background radiation), the UV radiation field of the Galaxy, the UV background of all QSOs and the hot halo model radiation field. Moreover, an arbitrary user-defined radiation field may also be included.

Restrictions on the complexity of the problem:
None. The code can handle an arbitrary number of processes and levels. The required memory is dynamically allocated in run time.

Typical running time:
The following table gives the running times (in seconds) of the testcases provided in section 4:


System library Distributed libraries

testcase #1 0.06 0.06
testcase #2 0.06 0.10
testcase #3 0.06 0.06
testcase #4 0.05 0.07
testcase #5 0.12 0.14

The listed values correspond to averages over 10 executions on a PC Pentium Pro 200 MHz. The column labelled "System library" gives the running times in case the routines from the MSIMSL library are used. The figures given in the next column correspond to the distributed version of PopRatio, that includes routines from the BLAS, LAPACK and PPPACK libraries. The testcases were run using unoptimized BLAS routines.

LONG WRITE-UP


Table of Contents

INTRODUCTION

METHOD OF SOLUTION
The equations of statistical equilibrium
Fluorescence
Solving the system of statistical equilibrium equations

THE PACKAGE POPRATIO
The structure of PopRatio
PRECISION
PHYSMATH
FIELDINTENSITIES
POPRATIO
Other packages used by PopRatio
The atomic data input file
Installing and running PopRatio
Setting the accuracy of floating point operations
Setting the radiation field
Writing the main program

APPLICATIONS AND EXAMPLES OF USING POPRATIO
Testcase #1
Testcase #2
Testcase #3
Testcase #4
Testcase #5

CONCLUDING REMARKS

REFERENCES

Next