Instructions:

A Postprocessor for Recalculating CALPOST Visibility Outputs

with the New IMPROVE Algorithm

Version 2

14 October 2006

Introduction

CALPOST can be used to processes outputs from CALPUFF modeling of a source’s emissions

to calculate the 24-hr average visibility impairments caused by primary and secondary particulate

matter attributable to emissions from the modeled source. Those increments are presented in two

tables, both labeled “Ranked Daily Visibility Change”, in the CALPOST output (.LST) file. The

table of interest to us has the subtitle “Modeled Extinction by Species” and lists the dates and 

locations of such incremental impacts in light extinction (bext) in ranked order, starting with the

one that represents the largest percentage change in light extinction.

1

In addition, with a different setup of the control file CALPOST.INP, the CALPOST

postprocessor can be used to calculate 24-hr averages of NOx concentrations. As described 

below, the outputs from that additional CALPOST run can be used to assess the visibility impact

of the NO2 gas in the source plume.

Visibility effects due to particulate matter are calculated in CALPOST from CALPUFF-modeled 

particulate matter component concentrations using effectively the “traditional” IMPROVE

algorithm. CALPOST allows for choice of the humidity scattering enhancement function (f(RH))

to be used with the IMPROVE algorithm; for modeling in connection with the US EPA’s

Regional Haze Regulations (RHR), the appropriate form of f(RH) is the one described and 

tabulated in the EPA’s 2003 guidance for tracking progress under the RHR. Visibility effects due

to NO2 are not considered in the CALPOST visibility calculation.

Recently, the IMPROVE Steering Committee developed a new algorithm for estimating light

extinction from particulate matter component concentrations. This algorithm (the “new

IMPROVE algorithm”) provides a better correspondence between the measured visibility and 

 1 The other table in the CALPOST visibility output file, with the subtitle “% of Modeled Extinction by

Species”, provides equivalent results in terms of changes in the haze index, in deciviews. The two tables

represent the same results, with identical ranking of events, while just using different (but mathematically

related) metrics.

Ivar Tombach, Ph.D.

 Environmental Consulting

753 Grada Ave.

Camarillo, CA 93010

805 388-2341

805 445-9424 fax

itombach@aol.com
2

that calculated from particulate matter component concentrations. The new algorithm differs in 

several substantive ways from the traditional one:

• The extinction efficiencies of sulfates, nitrates, and organics have been changed and are

now functions of their concentrations. The extinction efficiencies of sulfate and nitrate

are no longer identical, although the new hygroscopic scattering enhancement factors

applied to them are the same.

• The concentration of particulate organic matter (POM; variously also labeled OCM or

OMC, and sometimes just called “organics”) is now taken to be 1.8 times that of the

measured organic carbon (OC) concentration. (Confusingly, CALPOST labels the

organics concentration as OC.)

• The contribution of fine sea salt to light extinction has been added, and is accompanied 

by its own hygroscopic scattering enhancement factor, fss(RH).

• The light scattering by air itself (Rayleigh scattering) now varies with site elevation and

mean temperature. It is to be rounded off to the nearest one Mm-1when used with the

new algorithm.

• The light absorption by NO2 gas has been added.

The new IMPROVE algorithm is represented by the following formula:

2

bext = 2.2•fS(RH)•[small sulfate] + 4.8•fL(RH)•[large sulfate]

+2.4•fS(RH)•[small nitrate] + 5.1•fL(RH)•[large nitrate]

+2.8•[small organics] + 6.1•[large organics]

+10•[elemental carbon]

+1•[fine soil] (Eq. 1)

+1.7•fSS(RH)•[sea salt]

+0.6•[coarse matter]

+Rayleigh scattering (site specific)

+0.33•[NO2(ppb)]

The concentrations of “large” and “small” sulfate particles are calculated as follows:

[large sulfate] = {[total sulfate]/20}•[total sulfate] if [total sulfate] < 20 μg

3

[large sulfate] = [total sulfate] if [total sulfate] ≥ 20 μg/m

3 (Eqs. 2)

[small sulfate] = [total sulfate] – [large sulfate].

Identical formulas, with changes in component names, are used for nitrate and organics. In

effect, these formulas conclude that low concentrations of these components are mainly in the

form of “small” particles with their own extinction efficiency and fS(RH), while high

 2 Square brackets denote concentrations.
3

concentrations (approaching 20 μg/m3) are mainly in the form of “large” particles with a

different extinction efficiency and fL(RH). The scaling factor [total sulfate]/20 sets the fraction of

total sulfate that is small.

The sea salt concentration is taken to be 1.8•[Cl

-

] or, if chloride ion measurements are not

available, the chlorine concentration can be used in its place. Site specific Rayleigh scattering 

values have been calculated for all IMPROVE sites.

3 Nitrogen dioxide concentrations are not

measured at IMPROVE sites, but the ambient NO2 concentrations under natural conditions can 

be expected to be negligibly small. The higher NO2 concentration in a source plume may be

great enough to cause a change in visibility, however.

In order to enable CALPOST to calculate CALPUFF-modeled source impacts on visibility using

the new IMPROVE algorithm, it would have to be extensively reprogrammed. As an alternative,

such a calculation could be done “off line” by adding another layer of post processing after

CALPOST. To this end, I have developed a processor, in the form of an Excel workbook, that

takes the CALPOST “Ranked Daily Visibility Change: Modeled Extinction by Species” output

table, referenced against default annual average natural conditions concentrations, and creates an 

equivalent table of results based on the new algorithm. It can also incorporate the visibility 

impact due to light absorption by NO2 in the plume.

The following describes the science behind the processor (which we’ll call the CALPOSTIMPROVE Processor) and provides instructions for using it.

Concepts

In addition to the mechanical changes imposed by all the new terms in the new IMPROVE

formula, applying the new algorithm also requires some conceptual changes. The biggest of

these is that the extinction efficiencies of sulfates, nitrates, and organics now depend on the

concentrations of those species. The practical implication of this is that extinction is no longer

linearly additive. To calculate total extinction, you cannot take a background level of extinction 

and add to it CALPOST’s calculation of extinction caused by the particulate matter coming from

a source, because when the two aerosols mix in the atmosphere their combined mass

concentration results in increases in the extinction efficiencies of both the background and the

source contribution. This means that combining background particulate matter with the

particulate matter from a source gives an extinction result that is greater than the sum of the two 

separate extinctions.

With the nonlinear behavior resulting from applying the new IMPROVE algorithm, the

extinction impact of the source (i.e., the increase in extinction resulting from introducing source

emissions into the atmosphere) is the sum of three parts:

1. The source impact calculated by the new IMPROVE algorithm using the CALPOST

outputs for a plume in isolation;

 3 Revised IMPROVE Algorithm for estimating Light Extinction from Particle Speciation Data. Report to

IMPROVE Steering Committee, November 2005.
4

2. An increase in that source impact because the extinction efficiency increases when the

source’s aerosol combines with the background aerosol; and correspondingly,

3. An increase in the extinction of the background aerosol because of that same mixing.

The total new extinction is the sum of the above three components plus the original background 

extinction. The original background extinction is just that calculated by the new IMPROVE

algorithm from background concentrations of the various components, without any consideration 

of the effects of the plume. For this application, the background is taken to be that described by 

EPA’s default natural conditions. The difference between the total extinction and the background

is the impact of the source.

More details about the calculation are given in the appendix.

Description of Processor

The CALPOST-IMPROVE Processor is a Microsoft Excel workbook that consists of four

worksheets. In Version 2 the worksheets are the following.

1. Input & Output – The output table from CALPOST is imported to here and user entries

are made for the Rayleigh scattering coefficient and, if desired, for a sea salt

concentration at the Class I area of interest. The NOx concentration on each day

attributable to the emissions from the source can also be entered together with an 

assumption of what fraction of the NOx is in the form of NO2. A revised table, with

extinction based on the new IMPROVE algorithm is then presented on the same page.

This is the only page on which user input takes place, and the results of the calculations

appear on this page.

2. Calculations -- The calculations themselves are all done on this worksheet. There is no

user input to this page. The variables are explained on the worksheet itself, so the user

can find intermediate values if so inclined.

3. F(RH) – This worksheet tabulates the traditional IMPROVE f(RH) against RH, and then 

also lists values for the three new humidity growth functions, fS(RH), fL(RH), and 

fSS(RH). It serves as a lookup table for the “Calculations” worksheet.

4. Rayleigh & Sea Salt – This page tabulates the IMPROVE-recommended Rayleigh 

scattering coefficients for all VISTAS Class I areas and for Class I areas in adjacent

states. It also lists the average sea salt concentrations for the same locations, as tabulated 

on the VIEWS web site, based on chloride or chlorine measurements by IMPROVE

monitors between 2000 and 2004. This sheet just provides information for the user; it is

not linked to the rest of the workbook. The user can obtain Rayleigh and sea salt numbers

for the Class I area of interest from this table and then manually enter them in the

designated spaces in worksheet 1.
5

Instructions for Using the CALPOST-IMPROVE Processor

These instructions apply to Version 2 of the processor. Version 2 includes the ability to calculate

the light extinction effects of NO2 resulting from the source’s emissions.

Step 1. Begin by opening the output (.LST) file from a CALPOST visibility calculation run in a

text editor or word processing program.

4 In the second half of the file, locate the table “Ranked 

Daily Visibility Change” with the subheading “Modeled Extinction by Species”.

5

Step 2. Copy this table and paste it onto a new page. Save it as a text (.txt) file, not as a formatted

(e.g., MS Word .doc or .rtf) file. The final table should contain only the column headings and the

data. Delete all other captions, any additional data summaries at the end, and blank lines before

or after the table. The processor can handle a maximum of 22 lines of data (i.e., the highest rank

in the last, unlabeled, column should be 22) plus a row of column captions. Delete any data that

exceed this limit. (Fewer than 22 lines of data are OK.) The result should look like the example

in Figure 1, although the line wrapping may differ.

Step 3. Open the CALPOST-IMPROVE Processor in Microsoft Excel. Save the open file under a

new name so that the original empty processor will remain available for future use. The front

worksheet, labeled “Input & Output” looks like Figure 2. There is a large empty box, surrounded 

by double lines, into which the table created above will be imported, as described below.

6 On the

right is a box into which NOx concentrations may be entered manually, and a small box below

this box is provided for entry of the user’s assumption of what fraction of that NOs is in the form

of NO2. Two smaller boxes provide for user input of the Rayleigh scattering coefficient and,

optionally, sea salt concentration for the Class I area, as described below. Results of the new

IMPROVE algorithm calculations appear in blue in the lower half of the worksheet and some

additional results, that are also useful for quality control, appear in green to the right of the large

box. At the moment, many results cells will display nonsensical numbers and error messages,

such as shown in Figure 2.

Step 4. Select the upper left cell (A7) in the large box. On the Excel menu bar, go to Data>Get

External Data and click on Import Text File.

7 (If the large box is not empty, click on Edit Text

Import instead.) Select the file that contains the table created in Step 2 and click on the Get Data

button. Go through the Text Import Wizard steps, checking that all values appear correctly in

separate columns. (The label “COORDINATES (km)” will be split over two columns; this is

OK.) When everything appears in order, click Finish.

 4 The background concentrations that were entered into CALPOST must be the EPA-prescribed default

annual average natural conditions concentrations for the East. The processor will not give correct answers

if other concentrations were used in CALPOST. 5 For future reference in Step 7, this may also be a good time to locate the table with the same title but

with the subtitle “% of Modeled Extinction by Species”, which appears later in the output file.

6 If the workbook has already been used, the boxes may not be empty. This does not matter.

7 The exact wording may vary slightly between different versions of Microsoft Excel. The terminology

used here is from Excel 2004 for Macintosh.
6

YEAR DAY HR RECEPTOR COORDINATES (km) TYPE BEXT(Model) BEXT(BKG) 

BEXT(Total) %CHANGE F(RH) bxSO4 bxNO3 bxOC bxEC bxPMC bxPMF 

2002 175 0 1027 1479.069 24.683 D 5.495 21.650 27.145 

25.38 3.500 5.401 0.045 0.042 0.002 0.001 0.004 1

2002 172 0 1021 1479.244 23.778 D 4.923 21.650 26.573 

22.74 3.500 4.475 0.404 0.038 0.001 0.001 0.004 2

2002 284 0 1045 1484.348 27.580 D 3.150 21.470 24.620 

14.67 3.300 2.684 0.428 0.033 0.001 0.001 0.003 3

2002 353 0 1026 1482.762 24.457 D 2.594 21.290 23.884 

12.18 3.100 2.017 0.557 0.018 0.001 0.000 0.002 4

2002 283 0 1026 1482.762 24.457 D 2.502 21.470 23.972 

11.65 3.300 2.269 0.201 0.028 0.001 0.001 0.003 5

2002 195 0 1045 1484.348 27.580 D 2.011 21.830 23.841 

9.21 3.700 1.963 0.031 0.015 0.001 0.000 0.001 6

2002 20 0 1117 1486.636 34.592 D 1.872 21.200 23.072 

8.83 3.000 1.542 0.320 0.009 0.000 0.000 0.001 7

2002 173 0 1128 1479.259 35.042 D 1.649 21.650 23.299 

7.62 3.500 1.625 0.012 0.010 0.000 0.000 0.001 8

2002 234 0 1021 1479.244 23.778 D 1.524 22.190 23.714 

6.87 4.100 1.482 0.029 0.011 0.000 0.000 0.001 9

2002 298 0 1021 1479.244 23.778 D 1.459 21.470 22.929 

6.80 3.300 1.284 0.160 0.014 0.001 0.000 0.001 10

2002 299 0 1021 1479.244 23.778 D 1.436 21.470 22.906 

6.69 3.300 1.281 0.140 0.013 0.000 0.000 0.001 11

2002 275 0 1026 1482.762 24.457 D 1.270 21.470 22.740 

5.92 3.300 1.202 0.058 0.009 0.000 0.000 0.001 12

2002 263 0 1045 1484.348 27.580 D 1.237 22.100 23.337 

5.60 4.000 1.223 0.008 0.005 0.000 0.000 0.001 13

2002 252 0 1026 1482.762 24.457 D 1.189 22.100 23.289 

5.38 4.000 1.166 0.013 0.009 0.000 0.000 0.001 14

2002 285 0 1021 1479.244 23.778 D 0.992 21.470 22.462 

4.62 3.300 0.813 0.179 0.001 0.000 0.000 0.000 15

2002 161 0 1026 1482.762 24.457 D 0.873 21.650 22.523 

4.03 3.500 0.842 0.020 0.009 0.000 0.000 0.001 16

2002 150 0 1026 1482.762 24.457 D 0.857 21.380 22.237 

4.01 3.200 0.822 0.026 0.007 0.000 0.000 0.001 17

2002 340 0 1140 1481.017 37.258 D 0.817 21.290 22.107 

3.84 3.100 0.663 0.153 0.001 0.000 0.000 0.000 18

2002 151 0 1117 1486.636 34.592 D 0.745 21.380 22.125 

3.49 3.200 0.704 0.033 0.007 0.000 0.000 0.001 19

2002 160 0 1021 1479.244 23.778 D 0.735 21.650 22.385 

3.40 3.500 0.710 0.014 0.010 0.000 0.000 0.001 20

2002 346 0 1021 1479.244 23.778 D 0.703 21.290 21.993 

3.30 3.100 0.620 0.080 0.002 0.000 0.000 0.000 21

2002 247 0 1021 1479.244 23.778 D 0.661 22.100 22.761 

2.99 4.000 0.654 0.004 0.002 0.000 0.000 0.000 22

Figure 1. Example of CALPOST Output Table, in Proper Format for Importing into the

CALPOST-IMPROVE Processor.

Step 5.8 The “Import Data” window will appear, with cell A7 indicated as the location at which 

data will be entered. Click on the Properties button. In the window that appears, select

“Overwrite existing cells with new data, clear unused cells” and uncheck “Adjust column 

width”, then click on OK. Now click on the OK button in the “Import Data” window.

Step 6. Assuming that your Excel application is set up to automatically recalculate whenever any

entries are changed, you should now have filled the cells in the large box on the first worksheet,

 8 If the processor already had data in it and Edit Text Import was clicked in Step 4, then the “Import Data”

window will not appear and Step 5 can be skipped.
7

5. (Optional)

Enter 24hr

NOx conc.

YEAR DAY HR RECEPTOR TYPE BEXT(Model) BEXT(BKG) BEXT(Total) %CHANGE F(RH) bxSO4 bxNO3 bxOC bxEC bxPMC bxPMF Rank NOx(ppb)

dv(total) dv(bkg) !dv

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

#NUM! #NUM! #NUM!

YEAR DAY HR RECEPTOR TYPE BEXT(Source) BEXT(BKG) BEXT(Total) %CHANGE RH(%) bsSO4 bsNO3 bsOC bsEC bsPMC bsPMF baNO2 dv(total) dv(bkg) !dv

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

0 0 0 0 0 0 0 #N/A #N/A #N/A #N/A #N/A #N/A #N/A 0 0 0 0 0 1 #N/A #N/A 0.00

6. Enter desired NO2/NOx ratio 

(default is 0)

2. Check calculated values below

against CALPOST's "Ranked Daily

Visibility Change" (dv) table

New

Rank

3. Enter value of site-specific Rayleigh scattering coefficient, from "Rayleigh & Sea Salt"

worksheet

1. At cell A7, import "Ranked Daily Visibility Change" (bext) table, including column headings,

from CALPOST (22 days, max)

COORDINATES (km)

COORDINATES (km)

4. (Optional) Insert annual average sea salt concentration, from "Rayleigh & Sea Salt"

worksheet. Leave blank if not used, i.e. default is 0.

---------------------------------- OUTPUT (based on new IMPROVE algorithm) ---------------------------------

Figure 2. Example of Appearance of Input & Output Worksheet before Data Entry.
8

numbers should have appeared in the green columns to the right, and some numbers will

have appeared in the output table in blue on the lower half of the worksheet. If the data

import worked properly, none of the imported data should have spilled out of the large

box. Check that all the column captions in bold outside the large box are now duplicated 

on the first line in the box. (There won’t be a caption for Rank.)

Step 7. As a further check on whether everything is correct so far, the dv information in 

the three columns to the right of the large box should be the same as that in the second 

CALPOST table “Ranked Daily Visibility Change: % of Modeled Extinction by

Species”, which was mentioned in Footnote 1.

Step 8. Beneath the large box that was just filled with imported data, enter the Rayleigh

scattering coefficient for the Class I area of interest into the top small box after red

instruction 3. Also, if you wish, fill in the other small box, the one after red instruction 4,

with the annual average sea salt concentration. (The sea salt box may be left blank, but

the Rayleigh scattering coefficient box must be filled in.) To help with filling in these two 

boxes, the fourth worksheet, “Rayleigh & Sea Salt”, provides IMPROVE-calculated 

values of the Rayleigh coefficients for Class I areas in the VISTAS region and in adjacent

states. Also, average sea salt concentrations for 2000-2004, calculated in accordance with 

the new IMPROVE procedures, can be found there.

Step 9.

9 If the impact due to NO2 is to be considered, a second CALPOST run will be

needed to provide the 24-hr average NOx concentrations estimated by CALPUFF. For

this purpose, run CALPOST using the ASPEC = NOX option in Input Group 1 of the

CALPOST.INP control file. The NOx values to insert in the NOx input box on the Input

& Output page of the processor have to be extracted manually from the CALPOST output

file for each date and receptor listed in the file that was imported in Steps 1 through 5

above and are displayed in the left hand columns in the large box.

Step 10. Select a value between 0 and 1 to represent what fraction of NOx is in the form

of NO2. Enter this value into the small box at red instruction 6 below the column where

the NOx concentrations were entered.10

Step 11. The blue data table at the bottom of the page represents the new IMPROVE

algorithm outputs. An example is shown in Figure 3. This table can be compared with the

original CALPOST table at the top of the page. All of the columns in both tables show

exactly the same variables, except that the F(RH) column in the top table is replaced by

just the RH in the lower table (since the new procedure has three different f(RH)

functions) and a new baNO2 column has been added to the bottom table to show the light

absorption due to NO2 (in Mm-1). Although the events are listed in the same order in both

tables, note that their rankings may have changed, as is the case for many of the lines in

the blue output table in Figure 3.

 9 Steps 8 and 9 are optional. If the impact due to NO2 is not of interest, just leave the entry fields

mentioned in these steps blank. 10 An easy way to see the effect of the NO2 on the source’s impact in the output table in the lower

half of the page is to toggle this NO2/NOx value between the selected value and zero.
9

For those who are interested in more detail concerning the calculations that take place,

values of the three f(RH) functions appear in columns M through O on the second,

“Calculations” spreadsheet. The extinction impact of the source, including enhancement

of the extinction efficiencies for sulfates, nitrates, and organics because of greater total

mass concentrations, appears in columns V through AC. Extinction due to the annual

average natural background appears in Columns AJ through AN; natural background

extinctions for those components that are enhanced by greater total mass concentrations

appear in columns AU through AX.
10

CALPOST Recalculation with New IMPROVE Algorithm

5. (Optional)

Enter 24hr

NOx conc.

YEAR DAY HR RECEPTOR TYPE BEXT(Model) BEXT(BKG) BEXT(Total) %CHANGE F(RH) bxSO4 bxNO3 bxOC bxEC bxPMC bxPMF Rank NOx(ppb)

YEAR DAY H R RECEPTOR COORDINA TES (km) TYPE BEXT(Model) BEXT(BKG) BEXT(Total) %CHANGE F(RH) bxSO4 bxNO3 bxOC bxEC bxPMC bxPMF dv(total) dv(bkg) !dv

2002 175 0 1027 1479.069 24.683 D 5.495 21.65 27.145 25.38 3.5 5.401 0.045 0.042 0.002 0.001 0.004 1 9.99 7.72 2.26 2

2002 172 0 1021 1479.244 23.778 D 4.923 21.65 26.573 22.74 3.5 4.475 0.404 0.038 0.001 0.001 0.004 2 9.77 7.72 2.05 0.5

2002 284 0 1045 1484.348 27.58 D 3.15 21.47 24.62 14.67 3.3 2.684 0.428 0.033 0.001 0.001 0.003 3 9.01 7.64 1.37 0.4

2002 353 0 1026 1482.762 24.457 D 2.594 21.29 23.884 12.18 3.1 2.017 0.557 0.018 0.001 0 0.002 4 8.71 7.56 1.15 0.7

2002 283 0 1026 1482.762 24.457 D 2.502 21.47 23.972 11.65 3.3 2.269 0.201 0.028 0.001 0.001 0.003 5 8.74 7.64 1.10 1.4

2002 195 0 1045 1484.348 27.58 D 2.011 21.83 23.841 9.21 3.7 1.963 0.031 0.015 0.001 0 0.001 6 8.69 7.81 0.88 0.4

2002 20 0 1117 1486.636 34.592 D 1.872 21.2 23.072 8.83 3 1.542 0.32 0.009 0 0 0.001 7 8.36 7.51 0.85 0.8

2002 173 0 1128 1479.259 35.042 D 1.649 21.65 23.299 7.62 3.5 1.625 0.012 0.01 0 0 0.001 8 8.46 7.72 0.73 1.2

2002 234 0 1021 1479.244 23.778 D 1.524 22.19 23.714 6.87 4.1 1.482 0.029 0.011 0 0 0.001 9 8.63 7.97 0.66 1.2

2002 298 0 1021 1479.244 23.778 D 1.459 21.47 22.929 6.8 3.3 1.284 0.16 0.014 0.001 0 0.001 10 8.30 7.64 0.66 0.3

2002 299 0 1021 1479.244 23.778 D 1.436 21.47 22.906 6.69 3.3 1.281 0.14 0.013 0 0 0.001 11 8.29 7.64 0.65 0.5

2002 275 0 1026 1482.762 24.457 D 1.27 21.47 22.74 5.92 3.3 1.202 0.058 0.009 0 0 0.001 12 8.22 7.64 0.57 0.7

2002 263 0 1045 1484.348 27.58 D 1.237 22.1 23.337 5.6 4 1.223 0.008 0.005 0 0 0.001 13 8.47 7.93 0.54 0.4

2002 252 0 1026 1482.762 24.457 D 1.189 22.1 23.289 5.38 4 1.166 0.013 0.009 0 0 0.001 14 8.45 7.93 0.52 1.5

2002 285 0 1021 1479.244 23.778 D 0.992 21.47 22.462 4.62 3.3 0.813 0.179 0.001 0 0 0 15 8.09 7.64 0.45 1.9

2002 161 0 1026 1482.762 24.457 D 0.873 21.65 22.523 4.03 3.5 0.842 0.02 0.009 0 0 0.001 16 8.12 7.72 0.40 1.7

2002 150 0 1026 1482.762 24.457 D 0.857 21.38 22.237 4.01 3.2 0.822 0.026 0.007 0 0 0.001 17 7.99 7.60 0.39 1.4

2002 340 0 1140 1481.017 37.258 D 0.817 21.29 22.107 3.84 3.1 0.663 0.153 0.001 0 0 0 18 7.93 7.56 0.38 1.8

2002 151 0 1117 1486.636 34.592 D 0.745 21.38 22.125 3.49 3.2 0.704 0.033 0.007 0 0 0.001 19 7.94 7.60 0.34 1.4

2002 160 0 1021 1479.244 23.778 D 0.735 21.65 22.385 3.4 3.5 0.71 0.014 0.01 0 0 0.001 20 8.06 7.72 0.33 1.4

2002 346 0 1021 1479.244 23.778 D 0.703 21.29 21.993 3.3 3.1 0.62 0.08 0.002 0 0 0 21 7.88 7.56 0.32 0.4

2002 247 0 1021 1479.244 23.778 D 0.661 22.1 22.761 2.99 4 0.654 0.004 0.002 0 0 0 22 8.22 7.93 0.29 0

11

0.75

0.02

YEAR DAY HR RECEPTOR TYPE BEXT(Source) BEXT(BKG) BEXT(Total) %CHANGE RH(%) bsSO4 bsNO3 bsOC bsEC bsPMC bsPMF baNO2 dv(total) dv(bkg) !dv

2002 175 0 1027 1479.069 24.683 D 4.936 22.04 27.016 22.56 86 4.363 0.039 0.033 0.002 0.001 0.004 0.495 1 9.94 7.90 2.03

2002 172 0 1021 1479.244 23.778 D 4.112 22.04 26.187 18.80 86 3.604 0.349 0.029 0.001 0.001 0.004 0.124 2 9.63 7.90 1.72

2002 284 0 1045 1484.348 27.58 D 2.563 21.78 24.363 11.86 84 2.076 0.357 0.026 0.001 0.001 0.003 0.099 3 8.90 7.78 1.12

2002 353 0 1026 1482.762 24.457 D 2.174 21.57 23.760 10.15 82 1.528 0.455 0.014 0.001 0 0.002 0.173 5 8.65 7.69 0.97

2002 283 0 1026 1482.762 24.457 D 2.293 21.78 24.090 10.61 84 1.753 0.167 0.022 0.001 0.001 0.003 0.347 4 8.79 7.78 1.01

2002 195 0 1045 1484.348 27.58 D 1.708 22.21 23.936 7.75 87 1.569 0.027 0.012 0.001 0 0.001 0.099 6 8.73 7.98 0.75

2002 20 0 1117 1486.636 34.592 D 1.625 21.48 23.114 7.62 81 1.16 0.26 0.007 0 0 0.001 0.198 7 8.38 7.64 0.73

2002 173 0 1128 1479.259 35.042 D 1.613 22.04 23.667 7.37 86 1.297 0.01 0.008 0 0 0.001 0.297 8 8.61 7.90 0.71

2002 234 0 1021 1479.244 23.778 D 1.546 22.64 24.193 6.87 89 1.213 0.026 0.009 0 0 0.001 0.297 9 8.83 8.17 0.66

2002 298 0 1021 1479.244 23.778 D 1.209 21.78 22.998 5.59 84 0.988 0.133 0.011 0.001 0 0.001 0.074 13 8.33 7.78 0.54

2002 299 0 1021 1479.244 23.778 D 1.237 21.78 23.027 5.72 84 0.986 0.117 0.01 0 0 0.001 0.124 12 8.34 7.78 0.56

2002 275 0 1026 1482.762 24.457 D 1.154 21.78 22.943 5.34 84 0.925 0.048 0.007 0 0 0.001 0.173 14 8.30 7.78 0.52

2002 263 0 1045 1484.348 27.58 D 1.137 22.64 23.783 5.06 89 1.026 0.007 0.004 0 0 0.001 0.099 16 8.66 8.17 0.49

2002 252 0 1026 1482.762 24.457 D 1.369 22.64 24.015 6.08 89 0.978 0.012 0.007 0 0 0.001 0.371 10 8.76 8.17 0.59

2002 285 0 1021 1479.244 23.778 D 1.245 21.78 23.031 5.74 84 0.625 0.149 8E-04 0 0 0 0.47 11 8.34 7.78 0.56

2002 161 0 1026 1482.762 24.457 D 1.116 22.04 23.165 5.09 86 0.67 0.017 0.007 0 0 0.001 0.421 15 8.40 7.90 0.50

2002 150 0 1026 1482.762 24.457 D 0.997 21.67 22.668 4.63 83 0.623 0.021 0.005 0 0 0.001 0.347 18 8.18 7.73 0.45

2002 340 0 1140 1481.017 37.258 D 1.071 21.57 22.646 4.99 82 0.5 0.125 8E-04 0 0 0 0.446 17 8.17 7.69 0.49

2002 151 0 1117 1486.636 34.592 D 0.913 21.67 22.584 4.24 83 0.533 0.027 0.005 0 0 0.001 0.347 20 8.15 7.73 0.42

2002 160 0 1021 1479.244 23.778 D 0.932 22.04 22.980 4.25 86 0.565 0.012 0.008 0 0 0.001 0.347 19 8.32 7.90 0.42

2002 346 0 1021 1479.244 23.778 D 0.633 21.57 22.208 2.95 82 0.467 0.065 0.002 0 0 0 0.099 21 7.98 7.69 0.29

2002 247 0 1021 1479.244 23.778 D 0.553 22.64 23.195 2.46 89 0.548 0.004 0.002 0 0 0 0 22 8.41 8.17 0.24

6. Enter desired NO2/NOx ratio 

(default is 0)

2. Check calculated values below

against CALPOST's "Ranked Daily

Visibility Change" (dv) table

New

Rank

---------------------------- INPUT from CALPOST (based on old IMPROVE algorithm) --------------------------

3. Enter value of site-specific Rayleigh scattering coefficient, from "Rayleigh & Sea Salt"

worksheet

1. At cell A7, import "Ranked Daily Visibility Change" (bext) table, including column headings,

from CALPOST (22 days, max)

COORDINATES (km)

COORDINATES (km)

4. (Optional) Insert annual average sea salt concentration, from "Rayleigh & Sea Salt"

worksheet. Leave blank if not used, i.e. default is 0.

---------------------------------- OUTPUT (based on new IMPROVE algorithm) ---------------------------------

Figure 3. Example of Appearance of Finished Input & Output Worksheet.
11

Appendix

Details of Calculation Approach

As an example of the calculation steps, assume that the sulfate concentration resulting 

from emissions from a source is [SE] and the sulfate in the undisturbed natural

background is [SN], for a total ambient sulfate concentration of [ST]. According to 

Equations 1 and 2 in the main body of this document, the total extinction due to sulfate

for this combination is

bext(sulfate) = 2.2•fS(RH)•[small sulfate]+ 4.8•fL(RH)•[large sulfate], (Eq. A-1)

where

[large sulfateT] = {[ST]/20}•[ST] if [ST] < 20 μg

3

[large sulfateT] = [ST] if [ST] ≥ 20 μg/m

3 (Eqs. A-2)

[small sulfateT] = [ST] – [large sulfateT],

and the subscript T denotes total sulfate

For the original background, where there is no source impact, the corresponding formulas

for the terms in Equations A-2 are

[large sulfateN] = {[SN]/20}•[SN] if [SN] < 20 μg

3

[large sulfateN] = [SN] if [SN] ≥ 20 μg/m

3 (Eqs. A-3)

[small sulfateN] = [SN] – [large sulfateN],

where the subscript N denotes natural sulfate.

Similar calculations need to be carried out for nitrates. Contributions of the other

particulate components are linear and can just be calculated according to Equation 1.

If the impact due to NO2 is also to be considered, then the source impact due to this

component is, according to Equation 1,

bext(NO2) = 0.33•[NO2], (Eq. A-4)

where [NO2] is in ppb. It is reasonable to assume that the ambient NO2 concentrations

under natural conditions would be so small as to cause negligible light absorption, so the

corresponding term is not needed in the natural conditions calculation.

The contributions due to the various components are summed together as in Equation 1 to 

obtain the total extinction bext,T and the natural background extinction bext,N. The
12

fractional change in extinction is then calculated as the difference, normalized by the

natural background extinction

(bext,T – bext,N)/bext,N, (Eq. A-5)

a result that can also be expressed in deciviews.

These formulas are used in the CALPOST-IMPROVE Processor. Similar formulas apply 

for nitrates and organics. There is no nonlinearity in the remaining terms in Equation 1.