SMVGEAR: A sparsematrix, vectorized gear code for atmospheric models
Abstract
We present a Geartype code that efficiently solves ordinary differential equations in large griddomains. To obtain the final code, we modified an original program of C.W. Gear, built and added a sparsematrix package, and vectorized all loops about the gridcell dimension. Furthermore, to obtain at least 90% vectorization potential while preventing equations in some regions of the grid from slowing the solution over the entire griddomain, we divided the domain into blocks of gridcells and vectorized around these blocks. The sparsematrix solution reduced the average number of LUdecomposition calculations, compared to a fullmatrix solution, by factors of between 20 (for a matrix of order 40) and 120 (for a matrix of order 90). It also reduced both backsubstitution calculations and total array space by factors of between 5 and 12 for the above matrix sizes. Vectorization on a CRAY90 computer increased the speed by another factor of about 120 over the code running in scalar form. We tested the speed and accuracy of the program for several chemical applications on a single processor of the CRAY90 computer. The code averaged between 1 and 2 min of computer time per day of simulation to solve a smogchemistry set of 92 specied and 222 reactions over a 10,000cell grid, with continuously changing photorates. It also took 34 min per day to solve a stratosphericchemistry set of 39 species and 108 reactions over a 100,000cell grid. In addition, we tested the speed of the code while it solved aqueous chemistry in 43 aerosol size bins, along with other physical processes and transport, over a large grid. Finally, we compared the speed and other statistics from SMVGEAR to those of an existing sparse matrix Gear code, LSODES, and to a new method that we call the Multistep ImplicitExplicit (MIE) method.
 Publication:

Atmospheric Environment
 Pub Date:
 1994
 DOI:
 10.1016/13522310(94)901023
 Bibcode:
 1994AtmEn..28..273J