Patent Publication Number: US-8126673-B2

Title: High rate line-by-line calculation method and program by forked line type resolution

Description:
TECHNICAL FIELD 
     The present invention relates to high-speed line-by-line calculation of the absorption coefficient spectra of gas molecules necessary for atmospheric observations. 
     BACKGROUND ART 
     While the Earth&#39;s atmosphere receives electromagnetic radiation from the sun, it is itself releasing electromagnetic radiation mainly in the infrared region into space. This electromagnetic radiation interacts such as by absorption, radiation and scattering with gas molecules, clouds, aerosols and the like present in the atmosphere. By measuring changes in the spectral distribution of electromagnetic radiation caused by such interactions with the atmosphere (theoretical calculations of such distributions are referred to as radiative transfer calculations) using sensors on land or in airplanes or satellites, it is possible to study the air temperature, air pressure and concentrations of atmospheric trace gas constituents. 
     While a technique known as line-by-line calculation is used for radiative transfer calculations of the atmosphere, line-by-line calculations involve a enormous number of calculations. For this reason, the calculation time becomes extremely long, making it practically difficult to perform calculations over a wide spectral range at high speeds using personal computers or the like. Additionally, there are methods that make use of data obtained in line-by-line calculations beforehand involving table lookup routines as methods for avoiding the problem discussed above, but such methods have the drawback of requiring large data files. Additionally, other algorithms not requiring prior calculation have fared no better than about 20 times the speed of line-by-line calculations. 
     Non-Patent Publication 1: Akihiro Uchiyama, “Line-by-Line Computation of the Atmospheric Absorption Spectrum Using the Decomposed VOIGT Line Shape”,  J. Quant. Spectrosc. Radiat. Transfer , Vol. 47, No. 6, pp. 521-532, 1992. 
     DISCLOSURE OF THE INVENTION 
     Problems to be Solved by the Invention 
     Due to the problems mentioned above, calculation methods capable of line-by-line calculations at high speed have been sought, and the present invention offers such a calculation method and program. 
     Means for Solving the Problems 
     The present invention relations to a Voigt function approximation calculating program used for line-by-line calculations, said program performing:
         (1) a step of dividing a domain of a Voigt function into a first range around the peak of the Voigt function and a skirt portion not contained in the first range, replacing the first range with a cubic function, calculating the values and derivatives of said cubic function and the Voigt function in the skirt portion for each of first predetermined intervals, and connecting said cubic function and said Voigt function at points of connection thereof using the values and derivatives of both functions;   (2) a step of adding together the results of step (1) for a plurality of absorption lines;   (3) a step of calculating the function values and derivatives for the results of step (2) by interpolation over intervals smaller than said first predetermined intervals;   (4) a step of dividing said first range into a second range near the peak and a skirt portion not contained in the second range, replacing said second range of a “function representing the difference between the Voigt function and said cubic function” with a cubic function, and calculating values and derivatives of said cubic function and said “function representing the difference between the Voigt function and said cubic function” in the skirt portion for each of second predetermined intervals;   (5) a step of connecting said cubic function and said “function representing the difference between the Voigt function and said cubic function” at points of connection thereof using the values and derivatives of both functions;   (6) a step of adding the results of steps (4) and (5) to the results of step (3) for a plurality of absorption lines;   (7) a step of calculating the function values and derivatives for the results of step (6) by interpolation over intervals smaller than said second predetermined intervals; and   (8) a step of adding the values of the “function representing the difference between the Voigt function and said cubic function” to the results of step (7) for a plurality of absorption lines in said second range.       

     A method using the above steps allows a Voigt function to be calculated at high speed using a cubic function. 
     In addition thereto, the steps (5) through (8) may be repeated one or more times until a third predetermined interval is reached. As a result, it is possible to obtain detailed results with small calculation intervals. The first through third predetermined intervals can be determined as described below. 
     The first predetermined interval for the widest sub-function is j kmax dv. Here, j is a single-digit natural number, dv is the increment in wave number, and kmax is the largest natural number satisfying the relationship j kmax+2 pdv≦Vmax. However, Vmax represents the maximum calculation range from the center of the absorption line, and p is a natural number (p=1, 2, 3) for controlling the calculation precision 
     The most specific third predetermined interval is j kmim dv. Here, j is a single-digit natural number of about 2-6, dv is the increment of the wave number, and kmin is the maximum non-negative decimal fraction (0 when non-existent) satisfying the relationship j kmin pdv≦α (a being approximately γ/4). However, γ is an approximate value of the full-width at half-max of the absorption line, and p is a natural number (p=1, 2, 3) for controlling the calculation precision. 
     A method in accordance with any one of claims  1 - 4 , wherein the second predetermined intervals are determined using the following equation. 
     For the sub-function with the (k−kmin+1)-th smallest width, the predetermined interval is j k dv. Here, j is a single-digit natural number, dv is the increase in wave number and k is such that kmin≦k&lt;kmax. 
     For a quartered interpolation, the interpolation is calculated with j set to 4, using the function values y 0 , y 1  and function derivative values y 0 ′, y 1 ′ at x 0 , X 1  in the interpolation interval (x 0 , x 1 ), with the below-given Equation (1) as a function value interpolation equation, Equation (2) as a function derivative value interpolation equation and ε as a non-negative decimal fraction. 
     
       
         
           
             
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     1 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   
                     ( 
                     
                       
                         
                           
                             y 
                             a 
                           
                         
                       
                       
                         
                           
                             y 
                             b 
                           
                         
                       
                       
                         
                           
                             y 
                             c 
                           
                         
                       
                     
                     ) 
                   
                   = 
                   
                     
                       1 
                       64 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               54 
                               - 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               10 
                               + 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               9 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 3 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             32 
                           
                           
                             32 
                           
                           
                             
                               8 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 8 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               10 
                               + 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               54 
                               - 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               3 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 9 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                       
                       ) 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               y 
                               0 
                             
                           
                         
                         
                           
                             
                               y 
                               1 
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 0 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 1 
                                 ′ 
                               
                             
                           
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
             
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     2 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   
                     ( 
                     
                       
                         
                           
                             y 
                             a 
                             ′ 
                           
                         
                       
                       
                         
                           
                             y 
                             b 
                             ′ 
                           
                         
                       
                       
                         
                           
                             y 
                             c 
                             ′ 
                           
                         
                       
                     
                     ) 
                   
                   = 
                   
                     
                       1 
                       
                         16 
                         ⁢ 
                         
                           ( 
                           
                             
                               x 
                               1 
                             
                             - 
                             
                               x 
                               0 
                             
                           
                           ) 
                         
                       
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               
                                 - 
                                 18 
                               
                               + 
                               
                                 2 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               18 
                               - 
                               
                                 2 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               3 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 5 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               
                                 - 
                                 24 
                               
                               + 
                               
                                 8 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               24 
                               - 
                               
                                 8 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               
                                 - 
                                 4 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 4 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               
                                 - 
                                 18 
                               
                               + 
                               
                                 2 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               18 
                               - 
                               
                                 2 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               
                                 - 
                                 5 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               3 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                       
                       ) 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               y 
                               0 
                             
                           
                         
                         
                           
                             
                               y 
                               1 
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 0 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 1 
                                 ′ 
                               
                             
                           
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
     For an interpolation divided into five parts, the interpolation is calculated with j set to 5, using the function values y 0 , y 1  and function derivative values y 0 ′, y 1 ′ at x 0 , x 1  in the interpolation interval (x 0 , x 1 ), with the below-given Equation (3) as a function value interpolation equation, Equation (4) as a function derivative value interpolation equation and E as a non-negative decimal fraction. 
     
       
         
           
             
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     3 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   
                     ( 
                     
                       
                         
                           
                             y 
                             a 
                           
                         
                       
                       
                         
                           
                             y 
                             b 
                           
                         
                       
                       
                         
                           
                             y 
                             c 
                           
                         
                       
                       
                         
                           
                             y 
                             d 
                           
                         
                       
                     
                     ) 
                   
                   = 
                   
                     
                       1 
                       125 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               112 
                               - 
                               
                                 12 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               13 
                               + 
                               
                                 12 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               16 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 4 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               81 
                               - 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               44 
                               + 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               18 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 12 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               44 
                               + 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               81 
                               - 
                               
                                 6 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               12 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 18 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               13 
                               + 
                               
                                 12 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               112 
                               - 
                               
                                 12 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               4 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 16 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                       
                       ) 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               y 
                               0 
                             
                           
                         
                         
                           
                             
                               y 
                               1 
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 0 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 1 
                                 ′ 
                               
                             
                           
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
             
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     4 
                   
                   ] 
                 
               
               
                 
                     
                 
               
             
             
               
                 
                   
                     ( 
                     
                       
                         
                           
                             y 
                             a 
                             ′ 
                           
                         
                       
                       
                         
                           
                             y 
                             b 
                             ′ 
                           
                         
                       
                       
                         
                           
                             y 
                             c 
                             ′ 
                           
                         
                       
                       
                         
                           
                             y 
                             d 
                             ′ 
                           
                         
                       
                     
                     ) 
                   
                   = 
                   
                     
                       1 
                       
                         25 
                         ⁢ 
                         
                           ( 
                           
                             
                               x 
                               1 
                             
                             - 
                             
                               x 
                               0 
                             
                           
                           ) 
                         
                       
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               
                                 - 
                                 24 
                               
                               - 
                               ɛ 
                             
                           
                           
                             
                               24 
                               + 
                               ɛ 
                             
                           
                           
                             
                               8 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 7 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               
                                 - 
                                 36 
                               
                               + 
                               
                                 11 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               36 
                               - 
                               
                                 11 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               
                                 - 
                                 3 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 8 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               
                                 - 
                                 36 
                               
                               + 
                               
                                 11 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               36 
                               - 
                               
                                 11 
                                 ⁢ 
                                 ɛ 
                               
                             
                           
                           
                             
                               
                                 - 
                                 8 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 - 
                                 3 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                         
                           
                             
                               
                                 - 
                                 24 
                               
                               - 
                               ɛ 
                             
                           
                           
                             
                               24 
                               + 
                               ɛ 
                             
                           
                           
                             
                               
                                 - 
                                 7 
                               
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                           
                             
                               8 
                               ⁢ 
                               
                                 ( 
                                 
                                   1 
                                   - 
                                   ɛ 
                                 
                                 ) 
                               
                             
                           
                         
                       
                       ) 
                     
                     ⁢ 
                     
                       ( 
                       
                         
                           
                             
                               y 
                               0 
                             
                           
                         
                         
                           
                             
                               y 
                               1 
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 0 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 ( 
                                 
                                   
                                     x 
                                     1 
                                   
                                   - 
                                   
                                     x 
                                     0 
                                   
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 y 
                                 1 
                                 ′ 
                               
                             
                           
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
           
         
       
     
     Additionally, the invention offers a method for achieving high speeds, when assuming the Voigt function to be K(x, y) and the difference from the Voigt profile of the absorption line to be K(x, y)+ƒ(x), by replacing 
     
       
         
           
             
               
                 
                   
                     
                       
                         K 
                         ~ 
                       
                       ⁡ 
                       
                         ( 
                         
                           x 
                           , 
                           y 
                         
                         ) 
                       
                     
                     = 
                     
                       
                         A 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           K 
                           ⁡ 
                           
                             ( 
                             
                               x 
                               , 
                               y 
                             
                             ) 
                           
                         
                       
                       + 
                       
                         Bf 
                         ⁡ 
                         
                           ( 
                           x 
                           ) 
                         
                       
                     
                   
                   ⁢ 
                   
                     
 
                   
                   ⁢ 
                   and 
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     5 
                   
                   ] 
                 
               
             
             
               
                 
                   
                     ∂ 
                     
                       K 
                       ⁡ 
                       
                         ( 
                         
                           x 
                           , 
                           y 
                         
                         ) 
                       
                     
                   
                   
                     ∂ 
                     x 
                   
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     6 
                   
                   ] 
                 
               
             
           
         
       
     
     Furthermore, the invention offers a method for achieving high speeds, when assuming the difference from the Voigt profile to be K(x, y)ƒ(x), by replacing 
     
       
         
           
             
               
                 
                   
                     
                       
                         K 
                         ~ 
                       
                       ⁡ 
                       
                         ( 
                         
                           x 
                           , 
                           y 
                         
                         ) 
                       
                     
                     = 
                     
                       
                         K 
                         ⁡ 
                         
                           ( 
                           
                             x 
                             , 
                             y 
                           
                           ) 
                         
                       
                       ⁢ 
                       
                         f 
                         ⁡ 
                         
                           ( 
                           x 
                           ) 
                         
                       
                     
                   
                   ⁢ 
                   
                     
 
                   
                   ⁢ 
                   and 
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     7 
                   
                   ] 
                 
               
             
             
               
                 
                   
                     
                       ∂ 
                       
                         
                           K 
                           ~ 
                         
                         ⁡ 
                         
                           ( 
                           
                             x 
                             , 
                             y 
                           
                           ) 
                         
                       
                     
                     
                       ∂ 
                       x 
                     
                   
                   = 
                   
                     
                       
                         
                           ∂ 
                           
                             K 
                             ⁡ 
                             
                               ( 
                               
                                 x 
                                 , 
                                 y 
                               
                               ) 
                             
                           
                         
                         
                           ∂ 
                           x 
                         
                       
                       ⁢ 
                       
                         f 
                         ⁡ 
                         
                           ( 
                           x 
                           ) 
                         
                       
                     
                     + 
                     
                       
                         K 
                         ⁡ 
                         
                           ( 
                           
                             x 
                             , 
                             y 
                           
                           ) 
                         
                       
                       ⁢ 
                       
                         
                           ∂ 
                           
                             f 
                             ⁡ 
                             
                               ( 
                               x 
                               ) 
                             
                           
                         
                         
                           ∂ 
                           x 
                         
                       
                     
                   
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     8 
                   
                   ] 
                 
               
             
           
         
       
     
     Additionally, in line-mixing correction: 
                         K   ~     ⁡     (     x   ,   y     )       =       A   ⁢           ⁢     K   ⁡     (     x   ,   y     )         +     BL   ⁡     (     x   ,   y     )           ⁢     
     ⁢   and           [     Eq   .           ⁢   9     ]                   ∂       K   ~     ⁡     (     x   ,   y     )           ∂   x       =     -     2   ⁡     [         (     Ax   +   By     )     ⁢     K   ⁡     (     x   ,   y     )         -       (     Ay   -   Bx     )     ⁢     L   ⁡     (     x   ,   y     )         -     B     π         ]                 [     Eq   .           ⁢   10     ]               
Here, L(x, y) is the imaginary component of the function w(z) (the real part is the Voigt function), where complex number z=x+iy, defined by the following equation.
 
                     w   ⁡     (   z   )       =         ⅈ   π     ⁢       ∫     -   ∞     ∞     ⁢         exp   ⁡     (     -     t   2       )         z   -   t       ⁢     ⅆ   t           =         exp   ⁡     (     -     z   2       )       ⁢     erfc   ⁡     (       -   ⅈ     ⁢           ⁢   z     )         =       K   ⁡     (     x   ,   y     )       +     ⅈ   ⁢           ⁢     L   ⁡     (     x   ,   y     )                       [     Eq   .           ⁢   11     ]               
(erfc(z) is a complex complementary error function).
 
     Furthermore, the invention offers a device for performing the method of the present invention by loading the method described above as a program. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic view of a Voigt function. 
         FIG. 2  is a diagram showing how a Voigt function is divided into sub-functions according to the method of the present invention. 
         FIG. 3  is a diagram showing the error between a Voigt function and a cubic function. 
     
    
    
     EXPLANATION OF REFERENCE NUMBERS 
       1  Voigt function 
       2  first range 
       3  skirt portion 
       4  function contained in first range 
       5  portion not contained in first range 
     BEST MODE FOR CARRYING OUT THE INVENTION 
     An embodiment of the present invention shall be described below.  FIG. 1  is a diagram showing the shape of a Voigt function  1 . According to the present invention, this Voigt function  1  is first divided into sub-functions. These sub-functions are in a first range  2  around the peak and a skirt portion  3  outside the first range  2 . This first range  1  is replaced by a cubic function, and the portion not contained in the first range, in other words, the skirt portion, is calculated with the Voigt function. 
     The details of the calculation method are shown in  FIG. 2 . As shown in  FIG. 2(   a ), the function  4 , which is the portion of the Voigt function  1  contained in the first range  2 , is replaced by a cubic function. At this time, the cubic function is determined so as to smooth the connections by matching the derivatives of the functions at the points of connection between the cubic function and the Voigt function. Additionally, the portion  5  not contained in the first range is calculated by the Voigt function. The calculation is performed over a first predetermined interval, indicated by j kmax dv where dv is the change in wave number. Here, j is a single-digit natural number, and kmax is the largest natural number satisfying the relationship j kmax+2 pdv≦Vmax. Vmax may, for example, be 25 cm −1 . Additionally, j is normally a number of about 2-6, and is preferably 4. Also, Vmax represents the calculation range from the center of the absorption line, and p is a natural number for controlling the calculation precision, p preferably having a value of 1, 2 or 3. 
     Results calculated in this way are added together for a plurality of absorption lines. At this stage, the result is an approximate value calculated in the first predetermined interval. 
     Next, unevaluated points are calculated over an interval smaller than the first predetermined interval. That is, the unevaluated points are interpolated over intervals obtained by quartering the first predetermined interval. The calculation of the point of division is performed by the following interpolation formula. 
     The function values y 0 , y 1  and function derivative values y 0 ′, y 1 ′ at x 0 , x 1  in the interpolation interval (x 0 , x 1 ) can be determined by the following two equations: 
                   [     Eq   .           ⁢   12     ]                             (           y   a               y   b               y   c           )     =       1   64     ⁢     (           54   -     6   ⁢   ɛ             10   +     6   ⁢   ɛ             9   ⁢     (     1   -   ɛ     )               -   3     ⁢     (     1   -   ɛ     )               32       32         8   ⁢     (     1   -   ɛ     )               -   8     ⁢     (     1   -   ɛ     )                 10   +     6   ⁢   ɛ             54   -     6   ⁢   ɛ             3   ⁢     (     1   -   ɛ     )               -   9     ⁢     (     1   -   ɛ     )             )     ⁢     (           y   0               y   1                 (       x   1     -     x   0       )     ⁢     y   0   ′                   (       x   1     -     x   0       )     ⁢     y   1   ′             )               (   1   )               [     Eq   .           ⁢   13     ]                             (           y   a   ′               y   b   ′               y   c   ′           )     =       1     16   ⁢     (       x   1     -     x   0       )         ⁢     (             -   18     +     2   ⁢   ɛ             18   -     2   ⁢   ɛ             3   ⁢     (     1   -   ɛ     )               -   5     ⁢     (     1   -   ɛ     )                   -   24     +     8   ⁢   ɛ             24   -     8   ⁢   ɛ               -   4     ⁢     (     1   -   ɛ     )               -   4     ⁢     (     1   -   ɛ     )                   -   18     +     2   ⁢   ɛ             18   -     2   ⁢   ɛ               -   5     ⁢     (     1   -   ɛ     )             3   ⁢     (     1   -   ɛ     )             )     ⁢     (           y   0               y   1                 (       x   1     -     x   0       )     ⁢     y   0   ′                   (       x   1     -     x   0       )     ⁢     y   1   ′             )               (   2   )               
Here, ε is a non-negative decimal fraction. With regard to ε, even if the Voigt function and cubic function match at the interpolation points x 0 , x 1  as shown in  FIG. 3 , there will be an error in the function values due to differences in the curvature of the curves in the region between the interpolation points. While adequate precision can be obtained even if E=0, the error can be further reduced by about half by changing the value of ε to adjust the curvature of the cubic function. From these two equations it is possible to determine the function values y a , y b , y c  and the derivative values y a ′, y b ′, y c ′ at points where the interpolation interval (x 0 , x 1 ) of the aforementioned first predetermined interval has been quartered. Here, x 0 , x 1  are wave numbers in the present invention. The aforementioned adjustment of ε is performed by comparing the calculation results when changing ε with the calculation results for a normal line-by-line method for a small spectral range which is only a part of the spectral range to be calculated.
 
     Additionally, the present invention proposes an interpolation in which the first predetermined interval is divided into five parts. The interpolation equations for dividing into five parts are as follows: 
                   [     Eq   .           ⁢   14     ]                             (           y   a               y   b               y   c               y   d           )     =       1   125     ⁢     (           112   -     12   ⁢   ɛ             13   +     12   ⁢   ɛ             16   ⁢     (     1   -   ɛ     )               -   4     ⁢     (     1   -   ɛ     )                 81   -     6   ⁢   ɛ             44   +     6   ⁢   ɛ             18   ⁢     (     1   -   ɛ     )               -   12     ⁢     (     1   -   ɛ     )                 44   +     6   ⁢   ɛ             81   -     6   ⁢   ɛ             12   ⁢     (     1   -   ɛ     )               -   18     ⁢     (     1   -   ɛ     )                 13   +     12   ⁢   ɛ             112   -     12   ⁢   ɛ             4   ⁢     (     1   -   ɛ     )               -   16     ⁢     (     1   -   ɛ     )             )     ⁢     (           y   0               y   1                 (       x   1     -     x   0       )     ⁢     y   0   ′                   (       x   1     -     x   0       )     ⁢     y   1   ′             )               (   3   )               [     Eq   .           ⁢   15     ]                             (           y   a   ′               y   b   ′               y   c   ′               y   d   ′           )     =       1     25   ⁢     (       x   1     -     x   0       )         ⁢     (             -   24     -   ɛ           24   +   ɛ           8   ⁢     (     1   -   ɛ     )               -   7     ⁢     (     1   -   ɛ     )                   -   36     +     11   ⁢   ɛ             36   -     11   ⁢   ɛ               -   3     ⁢     (     1   -   ɛ     )               -   8     ⁢     (     1   -   ɛ     )                   -   36     +     11   ⁢   ɛ             36   -     11   ⁢   ɛ               -   8     ⁢     (     1   -   ɛ     )               -   3     ⁢     (     1   -   ɛ     )                   -   24     -   ɛ           24   +   ɛ             -   7     ⁢     (     1   -   ɛ     )             8   ⁢     (     1   -   ɛ     )             )     ⁢     (           y   0               y   1                 (       x   1     -     x   0       )     ⁢     y   0   ′                   (       x   1     -     x   0       )     ⁢     y   1   ′             )               (   4   )               
The symbols used in the equations are the same as in the case of quartering described above. Additionally, those skilled in the art would recognize that y d , y d ′ clearly represent a function value and a derivative value. Here, the interpolation equation described above can be used not only for the first predetermined interval, but also for other predetermined intervals, and this should also be obvious to those skilled in the art.
 
     The interpolation points are calculated as described above. Next, as shown in  FIG. 2(   b ), further calculations are performed by interpolation of the region around the peak in the first range. As described above, the area around the peak in the first range is called the second range  6 , and divided from a skirt portion not contained in the second range  6 . Then the second range is represented by a second cubic function, and the skirt portion not contained in the second range is represented by a “function representing the difference between the Voigt function and the first cubic function”  7 . This second cubic function represents the difference between the new cubic function and the first cubic function. Here, this “function representing the difference between the Voigt function and the first cubic function” shall henceforth be referred to simply as the “difference function”. As described above, the second cubic function and the “difference function”  7  are again joined under the condition that at the points of connection, the function values and derivative values are matched. 
     After connecting the functions in this way, the function value and derivative value are calculated in the second predetermined interval for the second range. This second predetermined interval is smaller than the first predetermined interval and is calculated by the equation given below. 
     For the sub-function with the (k−kmin+1)-th smallest width, the predetermined interval is j k dv. Here, j is a single-digit natural number, dv is the increase in wave number and k is such that kmin≦k&lt;kmax. 
     Additionally, these calculations are performed for all absorption lines. Furthermore, interpolation is performed between the calculated points. The equations (1) and (2) or (3) and (4) are used for the interpolation. 
     Here, the above method for calculating a “difference function” for a skirt portion not contained in the second range and a cubic function for the second range that connects smoothly therewith for a plurality of absorption lines has been explained, but it is also possible to use a method of calculating the Voigt function of the skirt portion not contained in the second range and a cubic function connecting smoothly therewith for a plurality of absorption lines, then subtracting the first cubic function from the entire first range for a plurality of absorption lines. 
     With regard to this second range, the above calculations may be repeated until a predetermined interval is reached. That is, the second range may be further divided into a peak area and a skirt portion which are respectively calculated by a cubic function and difference function, then connected, and the calculation performed with k in the equation for calculating the second predetermined interval incremented by 1. This calculation is performed for all absorption lines, and these are added to the results calculated in  FIG. 2(   b ). The steps described above are repeated until the predetermined interval is reached. 
     Further, a calculation is performed after replacing the peak area with a cubic function and making the skirt portion a “difference function”, over a third predetermined interval smaller than the second interval. This third predetermined interval is represented by the equation given below. The third predetermined interval is j kmin dv. Here, j is a single-digit natural number, dv is the increment of the wave number, and kmin is the maximum non-negative decimal fraction satisfying the relationship j kmin pdv≦α(if non-existent, it is set to 0). However, a has a value of about γ/4 (γ being an estimate of the full width at half max of the absorption line), and p is a natural number (p=1, 2, 3) controlling the calculation precision. 
     By following the above steps, it is possible to calculate a Voigt function precisely and at high speed. Here, it is known that there is a slight difference from the Voigt function of carbon dioxide and the like, and a method for correcting for this difference is known. The method of the present invention can also be applied to such corrections. These corrections shall be explained next. 
     General profile correction shall be explained first. 
     The Voigt function is represented by K(x, y). When the difference from the Voigt profile is represented by the shape of K(x, y)+ƒ(x), the high-speed technique can be applied by setting:
 
{tilde over (K)}(x,y)  [Eq. 16]
 
as the function to be substituted, and replacing it with:
 
                       K   ~     ⁡     (     x   ,   y     )       =       A   ⁢           ⁢     K   ⁡     (     x   ,   y     )         +     Bf   ⁡     (   x   )                 [     Eq   .           ⁢   17     ]                   ∂       K   ~     ⁡     (     x   ,   y     )           ∂   x       =       A   ⁢       ∂     K   ⁡     (     x   ,   y     )           ∂   x         +     B   ⁢       ∂     f   ⁡     (   x   )           ∂   x                   [     Eq   .           ⁢   18     ]               
Similarly, if the difference from the Voigt profile is represented by the shape of K(x, y)ƒ(x), then the high-speed technique can be performed by replacing it with
 
     
       
         
           
             
               
                 
                   
                     
                       K 
                       ~ 
                     
                     ⁡ 
                     
                       ( 
                       
                         x 
                         , 
                         y 
                       
                       ) 
                     
                   
                   = 
                   
                     
                       K 
                       ⁡ 
                       
                         ( 
                         
                           x 
                           , 
                           y 
                         
                         ) 
                       
                     
                     ⁢ 
                     
                       f 
                       ⁡ 
                       
                         ( 
                         x 
                         ) 
                       
                     
                   
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     19 
                   
                   ] 
                 
               
             
             
               
                 
                   
                     
                       ∂ 
                       
                         
                           K 
                           ~ 
                         
                         ⁡ 
                         
                           ( 
                           
                             x 
                             , 
                             y 
                           
                           ) 
                         
                       
                     
                     
                       ∂ 
                       x 
                     
                   
                   = 
                   
                     
                       
                         
                           ∂ 
                           
                             K 
                             ⁡ 
                             
                               ( 
                               
                                 x 
                                 , 
                                 y 
                               
                               ) 
                             
                           
                         
                         
                           ∂ 
                           x 
                         
                       
                       ⁢ 
                       
                         f 
                         ⁡ 
                         
                           ( 
                           x 
                           ) 
                         
                       
                     
                     + 
                     
                       
                         K 
                         ⁡ 
                         
                           ( 
                           
                             x 
                             , 
                             y 
                           
                           ) 
                         
                       
                       ⁢ 
                       
                         
                           ∂ 
                           
                             f 
                             ⁡ 
                             
                               ( 
                               x 
                               ) 
                             
                           
                         
                         
                           ∂ 
                           x 
                         
                       
                     
                   
                 
               
               
                 
                   [ 
                   
                     Eq 
                     . 
                     
                         
                     
                     ⁢ 
                     20 
                   
                   ] 
                 
               
             
           
         
       
     
     Explaining the above correction method with a specific example, in a sub-Lorentzian correction: 
                   K   ⁡     (     x   ,   y     )             [     Eq   .           ⁢   21     ]                 ∂     K   ⁡     (     x   ,   y     )           ∂   x             [     Eq   .           ⁢   22     ]               
will respectively become:
 
                       K   ~     ⁡     (     x   ,   y     )       =       K   ⁡     (     x   ,   y     )       ⁢   A   ⁢           ⁢     exp   ⁡     (       -   B     ⁢        x          )                 [     Eq   .           ⁢   23     ]                   ∂       K   ~     ⁡     (     x   ,   y     )           ∂   x       =           ∂     K   ⁡     (     x   ,   y     )           ∂   x       ⁢   A   ⁢           ⁢     exp   ⁡     (       -   B     ⁢        x          )         +       K   ⁡     (     x   ,   y     )       ⁡     [       -     sgn   ⁡     (   x   )         ⁢   AB   ⁢           ⁢     exp   ⁡     (       -   B     ⁢        x          )         ]                 [     Eq   .           ⁢   24     ]               
Here, A and B are correction coefficients. Additionally, those skilled in the art will recognize that sgn(x) is the sign function.
 
     For line-mixing correction, the following relationships arise: 
                       ∂     K   ⁡     (     x   ,   y     )           ∂   x       =     2   ⁡     [       y   ⁢           ⁢     L   ⁡     (     x   ,   y     )         -     x   ⁢           ⁢     K   ⁡     (     x   ,   y     )           ]               [     Eq   .           ⁢   25     ]                     ∂     L   ⁡     (     x   ,   y     )           ∂   x       =     2   ⁡     [       x   ⁢           ⁢     L   ⁡     (     x   ,   y     )         +     y   ⁢           ⁢     K   ⁡     (     x   ,   y     )         -     1     π         ]         ⁢     
     ⁢     Therefore   ,             [     Eq   .           ⁢   26     ]               K   ⁡     (     x   ,   y     )             [     Eq   .           ⁢   27     ]                 ∂     K   ⁡     (     x   ,   y     )           ∂   x             [     Eq   .           ⁢   28     ]               
will respectively be
 
                       K   ~     ⁡     (     x   ,   y     )       =       AK   ⁡     (     x   ,   y     )       +     BL   ⁡     (     x   ,   y     )                 [     Eq   .           ⁢   29     ]                   ∂       K   ~     ⁡     (     x   ,   y     )           ∂   x       =     -     2   ⁡     [         (     Ax   +   By     )     ⁢     K   ⁡     (     x   ,   y     )         -       (     Ay   -   Bx     )     ⁢     L   ⁡     (     x   ,   y     )         -     B     π         ]                 [     Eq   .           ⁢   30     ]               
Here, L(x, y) is the imaginary component of the function w(z), where complex number z=x+iy, defined by the following equation. The real part is the Voigt function.
 
                     w   ⁡     (   z   )       =         ⅈ   π     ⁢       ∫     -   ∞     ∞     ⁢         exp   ⁡     (     -     t   2       )         z   -   t       ⁢     ⅆ   t           =         exp   ⁡     (     -     z   2       )       ⁢     erfc   ⁡     (       -   ⅈ     ⁢           ⁢   z     )         =       K   ⁡     (     x   ,   y     )       +     ⅈ   ⁢           ⁢     L   ⁡     (     x   ,   y     )                       [     Eq   .           ⁢   31     ]               
erfc(z) is a complex complementary error function.
 
     According to the calculation methods of the present invention described above, it is possible to perform line-by-line calculations using Voigt functions with good precision and at high speed. By further loading these methods as computer programs, it is possible to result in specific devices. Such a program may, for example, be a stand-alone type program operating on a personal computer. It may also be provided in the form of a plug-in for other software.