1*eaa51f12SBarry Smith<HTML> 2*eaa51f12SBarry Smith<HEAD> 3*eaa51f12SBarry Smith<BASE HREF="http://www.mcs.anl.gov/petsc/petsc.html"> 4*eaa51f12SBarry Smith<TITLE>PETSc - The Portable, Extensible Toolkit for Scientific Computation</TITLE> 5*eaa51f12SBarry Smith</HEAD> 6*eaa51f12SBarry Smith<BODY BGCOLOR="#ffffff" LINK="#0000ff" VLINK="#ff0000" ALINK="#ff0000" TEXT="#000000"> 7*eaa51f12SBarry Smith<font size="4"> 8*eaa51f12SBarry Smith 9*eaa51f12SBarry Smith<center> 10*eaa51f12SBarry Smith<IMG SRC="petsc_title.gif"> 11*eaa51f12SBarry Smith</center> 12*eaa51f12SBarry Smith<P><HR><P> 13*eaa51f12SBarry Smith<center> The current version of <b>PETSc</b> is 2.0.17; released April 5, 1997.</center> 14*eaa51f12SBarry Smith<P><HR><P> 15*eaa51f12SBarry SmithRecent paper on the PETSc parallel design: 16*eaa51f12SBarry Smith<A HREF="ftp://info.mcs.anl.gov/pub/petsc/scitools96.ps.gz">Efficient 17*eaa51f12SBarry Smith Management of Parallelism in Object-Oriented Numerical Software Libraries</A>. 18*eaa51f12SBarry Smith To appear in <b>Modern Software Tools in Scientific Computing</b>, E. Arge, 19*eaa51f12SBarry Smith A. M. Bruaset and H. P. Langtangen, Ed., Birkhauser Press, 1997. 20*eaa51f12SBarry Smith<P> 21*eaa51f12SBarry SmithUnofficial PETSc benchmarks: Single processor floating point performance of the PETSc 22*eaa51f12SBarry Smithsparse <A HREF="ftp://info.mcs.anl.gov/pub/petsc/matmultbench.ps">matrix vector product</A> 23*eaa51f12SBarry Smithand <A HREF="ftp://info.mcs.anl.gov/pub/petsc/solvebench.ps">linear system solve</A> 24*eaa51f12SBarry Smith(with GMRES and preconditioner ILU(0)) for a 1503 by 1503 sparse matrix with a block 25*eaa51f12SBarry Smithsize of three, using the SeqBAIJ matrix data structure. These tests were run using 26*eaa51f12SBarry Smiththe SLES example src/sles/examples/tutorials/ex10.c. 27*eaa51f12SBarry Smith<P><HR><P> 28*eaa51f12SBarry Smith<H3> 29*eaa51f12SBarry Smith<MENU> 30*eaa51f12SBarry Smith<LI> <a href="petsc.html#Overview"> Overview </a> 31*eaa51f12SBarry Smith<LI> <a href="petsc.html#Features"> Features of PETSc 2.0 </a> 32*eaa51f12SBarry Smith<LI> <a href="petsc.html#Documentation"> Documentation including Online Man Pages </a> 33*eaa51f12SBarry Smith<LI> <a href="petsc.html#Installation"> Obtaining and Installing PETSc </a> 34*eaa51f12SBarry Smith<LI> <a href="petsc.html#PETScView"> PETScView - Visualization of PETSc Programs </a> 35*eaa51f12SBarry Smith<LI> <a href="petsc.html#PETScTeam"> The PETSc Team </a> 36*eaa51f12SBarry Smith<LI> <a href="petsc.html#MailingList"> PETSc Users Mailing List </a> 37*eaa51f12SBarry Smith<LI> <a href="petsc.html#BugReports"> Support and Submitting Bug Reports </a> 38*eaa51f12SBarry Smith<LI> <a href="petsc.html#Design"> Design of PETSc: Talks and Papers </a> 39*eaa51f12SBarry Smith<LI> <a href="petsc.html#Tutorials"> Online Tutorials </a> 40*eaa51f12SBarry Smith<LI> <a href="petsc.html#Applications"> Computational Science Applications using PETSc </a> 41*eaa51f12SBarry Smith</MENU> 42*eaa51f12SBarry Smith</H3> 43*eaa51f12SBarry Smith<P><HR><P> 44*eaa51f12SBarry Smith 45*eaa51f12SBarry Smith<A NAME="Overview"> <H1 align=center>Overview</H1> </A> 46*eaa51f12SBarry Smith 47*eaa51f12SBarry Smith <b>PETSc, the Portable, Extensible Toolkit for Scientific Computation</b> 48*eaa51f12SBarry Smith is a suite of data structures and routines for the 49*eaa51f12SBarry Smith uni- and parallel-processor solution of large-scale scientific 50*eaa51f12SBarry Smith application problems modeled by partial differential equations. 51*eaa51f12SBarry Smith 52*eaa51f12SBarry Smith <p> 53*eaa51f12SBarry Smith <b>PETSc 2.0</b> is fully usable from Fortran, C/C++, and runs on most 54*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Machines">machines</A>, now 55*eaa51f12SBarry Smith including Windows NT/95. 56*eaa51f12SBarry Smith 57*eaa51f12SBarry Smith <p> 58*eaa51f12SBarry Smith <center> 59*eaa51f12SBarry Smith <IMG SRC="petscwww.gif"><br> 60*eaa51f12SBarry Smith</center> 61*eaa51f12SBarry Smith<P><HR><P> 62*eaa51f12SBarry Smith<A NAME="Features"> <H1 align=center>Features of <b>PETSc</b> 2.0</H1> </A> 63*eaa51f12SBarry Smith 64*eaa51f12SBarry Smith <MENU> 65*eaa51f12SBarry Smith <LI> Parallel vectors. 66*eaa51f12SBarry Smith <LI> Parallel scatters and gathers. 67*eaa51f12SBarry Smith <LI> Parallel matrices, including several sparse matrix storage formats. 68*eaa51f12SBarry Smith <LI> Easy, efficient parallel matrix assembly. 69*eaa51f12SBarry Smith <LI> Sequential sparse matrix direct solvers. 70*eaa51f12SBarry Smith <LI> Scalable parallel preconditioners and Krylov subspace methods, including 71*eaa51f12SBarry Smith ICC, ILU, block Jacobi, overlapping Schwarz, CG, GMRES, Bi-CG-stab. 72*eaa51f12SBarry Smith <LI> Scalable parallel nonlinear equation solvers, including line search 73*eaa51f12SBarry Smith and trust region Newton methods. 74*eaa51f12SBarry Smith <LI> Scalable parallel unconstratined minimization solvers, including line search 75*eaa51f12SBarry Smith and trust region Newton methods. 76*eaa51f12SBarry Smith <LI> Simple parallel ODE solvers for application of the method of 77*eaa51f12SBarry Smith lines to large scale nonlinear (or linear) time-dependent PDEs. 78*eaa51f12SBarry Smith <LI> Distributed arrays. 79*eaa51f12SBarry Smith <LI> Automatic profiling of floating point and memory usage. 80*eaa51f12SBarry Smith <LI> Consistent interface for all solvers and data structures. 81*eaa51f12SBarry Smith <LI> Complete documentation including users manual and man pages. 82*eaa51f12SBarry Smith <LI> Intensive error checking. 83*eaa51f12SBarry Smith <LI> Portable to all reasonable UNIX systems and Windows NT/95. 84*eaa51f12SBarry Smith <LI> <b>PETSc</b> is <a href="petsc.html#BugReports">supported</a> and will 85*eaa51f12SBarry Smith be actively enhanced for the next several years. 86*eaa51f12SBarry Smith </MENU> 87*eaa51f12SBarry Smith 88*eaa51f12SBarry Smith<a href="http://www.mcs.anl.gov/petsc/petsc-components.html">More details on some of the 89*eaa51f12SBarry Smithimportant PETSc components</a> 90*eaa51f12SBarry Smith 91*eaa51f12SBarry Smith<P><HR><P> 92*eaa51f12SBarry Smith<A NAME="Documentation"><H1 align=center>PETSc Documentation</H1></A> 93*eaa51f12SBarry Smith 94*eaa51f12SBarry Smith<b>PETSc</b> 95*eaa51f12SBarry Smithis a sophisticated package; as such, fully understanding its 96*eaa51f12SBarry Smithits usage and design requires some time. However, application programmers 97*eaa51f12SBarry Smithcan easily begin to use <b>PETSc</b> from a high level, and then 98*eaa51f12SBarry Smithgradually learn more details about various facets of the software 99*eaa51f12SBarry Smithaccording to their needs. To ease this transition, PETSc is fully 100*eaa51f12SBarry Smithdocumented, including a users manual and complete manual pages for 101*eaa51f12SBarry Smithevery function. There are over 100 examples demonstrating software 102*eaa51f12SBarry Smithuse for a variety of problem classes. 103*eaa51f12SBarry SmithUsers should 104*eaa51f12SBarry Smithread the users manual before attempting to do any serious coding with 105*eaa51f12SBarry Smith<b>PETSc</b>! 106*eaa51f12SBarry Smith 107*eaa51f12SBarry Smith<p> 108*eaa51f12SBarry Smith<b>PETSc</b> is not for everyone; if your problem can be coded 109*eaa51f12SBarry Smithefficiently and relatively easily with, for example, Matlab, then you 110*eaa51f12SBarry Smithshould use Matlab. If you have little experience with programming on 111*eaa51f12SBarry Smitha Unix machine, then it may require some time to get up to snuff using 112*eaa51f12SBarry Smith<b>PETSc</b>, since it employs many advanced features of Unix utilities 113*eaa51f12SBarry Smith(e.g., make). <b>PETSc</b> is intended to make the development of large-scale 114*eaa51f12SBarry Smithcodes tractable; thus, our design emphasis has been on 115*eaa51f12SBarry Smithfeatures required in large projects, not on making it trivial to run 116*eaa51f12SBarry Smithsimple problems. 117*eaa51f12SBarry Smith 118*eaa51f12SBarry Smith <p> 119*eaa51f12SBarry Smith One page <A HREF="onepager.html"> summary of <b>PETSc</b></A>, also in 120*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/onepager.ps"> PostScript.</A> 121*eaa51f12SBarry Smith <p> 122*eaa51f12SBarry Smith 123*eaa51f12SBarry Smith <MENU> 124*eaa51f12SBarry Smith <LI> <A HREF="manual.html"> PETSc Users Manual (in HTML) </A> 125*eaa51f12SBarry Smith <LI> <A HREF="www/www.html">PETSc Man Pages (in HTML)</A> 126*eaa51f12SBarry Smith </MENU> 127*eaa51f12SBarry Smith 128*eaa51f12SBarry Smith <MENU> 129*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/intro.ps">Introduction to PETSc 130*eaa51f12SBarry Smith (in Postscript)</A> - Part I of the Users Manual 131*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/manual.ps">Users Manual (in Postscript)</A> 132*eaa51f12SBarry Smith </MENU> 133*eaa51f12SBarry Smith 134*eaa51f12SBarry Smith<P><HR><P> 135*eaa51f12SBarry Smith<A NAME="Installation"><H1 align=center>Obtaining and Installing PETSc</H1></A> 136*eaa51f12SBarry Smith <b>PETSc</b> is available by anonymous ftp from 137*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov">info.mcs.anl.gov</A> in 138*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc">pub/petsc</A> 139*eaa51f12SBarry Smith as <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petsc.tar.Z">petsc.tar.Z</A> 140*eaa51f12SBarry Smith or <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petsc.tar.gz">petsc.tar.gz</A> 141*eaa51f12SBarry Smith and the bugfixes are in 142*eaa51f12SBarry Smith <A HREF="http://www.mcs.anl.gov/petsc/petsc-patches.html"><b>BUGLIST</b></A> 143*eaa51f12SBarry Smith<P> 144*eaa51f12SBarry Smith For Windows NT and Windows 95 using the Microsoft Developers Studio (Visual C++) 145*eaa51f12SBarry Smithretrieve <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petsc.zip">petsc.zip</A> 146*eaa51f12SBarry Smith 147*eaa51f12SBarry Smith <MENU> 148*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Installation"> 149*eaa51f12SBarry Smith Instructions for installing <b>PETSc</b></A> 150*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Machines"> 151*eaa51f12SBarry Smith Details of the machines we currently support</A> 152*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Changes"> 153*eaa51f12SBarry Smith Changes and new features in recent versions of <b>PETSc</b></A> 154*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Troubleshooting"> 155*eaa51f12SBarry Smith Trouble shooting guide for <b>PETSc</b></A> 156*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Performance"> 157*eaa51f12SBarry Smith Performance enhancement tips for <b>PETSc</b> programs</A> 158*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/CodeManagement"> 159*eaa51f12SBarry Smith Suggestions for managing <b>PETSc</b> application codes</A> 160*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/FAQ">The <b>PETSc</b> FAQ</A> 161*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/petsc/README">FTP README file</A> 162*eaa51f12SBarry Smith </MENU> 163*eaa51f12SBarry Smith 164*eaa51f12SBarry Smith <p> 165*eaa51f12SBarry Smith Before installing <b>PETSc</b>, the following software packages must 166*eaa51f12SBarry Smith be installed on your machine. Many systems will already have them 167*eaa51f12SBarry Smith installed; speak to your system administrator. 168*eaa51f12SBarry Smith 169*eaa51f12SBarry Smith <MENU> 170*eaa51f12SBarry Smith <LI> BLAS and LAPACK in 171*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/blas_lapack.tar.Z"> 172*eaa51f12SBarry Smith blas_lapack.tar.Z</A> or 173*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/blas_lapack.tar.gz"> 174*eaa51f12SBarry Smith in blas_lapack.tar.gz</A>. 175*eaa51f12SBarry Smith <LI> An implementation of <A HREF="http://www.mcs.anl.gov/mpi/index.html">MPI</A>; 176*eaa51f12SBarry Smith we recommend <A HREF="ftp://info.mcs.anl.gov/pub/mpi/mpich.tar.Z">MPICH</A> 177*eaa51f12SBarry Smith <A HREF="http://www.mcs.anl.gov/home/lusk/mpich/index.html">(more info)</A>. 178*eaa51f12SBarry Smith <LI> <A HREF="ftp://info.mcs.anl.gov/pub/BlockSolve95/BlockSolve95.tar.Z"> 179*eaa51f12SBarry Smith BlockSolve95 </A> (optional) - parallel ICC(0) and ILU(0) 180*eaa51f12SBarry Smith <A HREF="http://www.mcs.anl.gov/blocksolve95/index.html">(more info)</A>. 181*eaa51f12SBarry Smith 182*eaa51f12SBarry Smith </MENU> 183*eaa51f12SBarry Smith 184*eaa51f12SBarry Smith If you are ONLY planning to use <b>PETSc</b> as a sequential library, you do 185*eaa51f12SBarry Smith NOT have to install MPI before installing <b>PETSc</b>. See the file 186*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/Installation">Installation</A> 187*eaa51f12SBarry Smith (also available in the main directory of the <b>PETSc</b> distribution) for 188*eaa51f12SBarry Smith details on installing <b>PETSc</b> without MPI. 189*eaa51f12SBarry Smith <p> 190*eaa51f12SBarry Smith 191*eaa51f12SBarry Smith Once you have untarred the <b>PETSc</b> directory, but before installing, 192*eaa51f12SBarry Smith check the 193*eaa51f12SBarry Smith <A HREF="http://www.mcs.anl.gov/petsc/petsc-patches.html"><b>BUGLIST</b></A> 194*eaa51f12SBarry Smith for patches/fixes you may need to make. 195*eaa51f12SBarry Smith 196*eaa51f12SBarry Smith <p> 197*eaa51f12SBarry Smith You can also browse all of the 198*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petsc"> 199*eaa51f12SBarry Smith <b>PETSc</b> source code</A> without retrieving it. 200*eaa51f12SBarry Smith Since we use wide source (100 characters per line), you probably will want to 201*eaa51f12SBarry Smith widen your browser window accordingly. 202*eaa51f12SBarry Smith 203*eaa51f12SBarry Smith<P><HR><P> 204*eaa51f12SBarry Smith<A NAME="PETScView"> <H1 align=center>PETScView</H1> </A> 205*eaa51f12SBarry Smith <b>PETSc</b> comes with high level tools for profiling and visualizing 206*eaa51f12SBarry Smith <b>PETSc</b> programs. A short 207*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petscview.ps.gz">description</A> 208*eaa51f12SBarry Smith of PETScView and 209*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/petscview2.ps.gz">example output</A> 210*eaa51f12SBarry Smith are available in PostScript. 211*eaa51f12SBarry Smith 212*eaa51f12SBarry Smith 213*eaa51f12SBarry Smith<P><HR><P> 214*eaa51f12SBarry Smith<A NAME="PETScTeam"> <H1 align=center>The PETSc Team</H1> </A> 215*eaa51f12SBarry Smith 216*eaa51f12SBarry Smith <H3 align=center> <a href="http://www.mcs.anl.gov/home/balay"> Satish Balay</a><Br> 217*eaa51f12SBarry Smith <a href="http://www.mcs.anl.gov/home/gropp"> William Gropp</a><Br> 218*eaa51f12SBarry Smith <a href="http://www.mcs.anl.gov/home/curfman"> Lois Curfman McInnes</a><Br> 219*eaa51f12SBarry Smith <a href="http://www.mcs.anl.gov/home/bsmith"> Barry Smith</a><P> 220*eaa51f12SBarry Smith 221*eaa51f12SBarry Smith <a href="http://www.mcs.anl.gov/index.html"> 222*eaa51f12SBarry Smith Mathematics and Computer Science Division</a><Br> 223*eaa51f12SBarry Smith <a href="http://www.anl.gov/">Argonne National Laboratory</a>.<P></H3> 224*eaa51f12SBarry Smith 225*eaa51f12SBarry Smith 226*eaa51f12SBarry Smith<P><HR><P> 227*eaa51f12SBarry Smith<A NAME="BugReports"> <H1 align=center>PETSc Questions and Bug Reports</H1></A> 228*eaa51f12SBarry Smith 229*eaa51f12SBarry Smith <p> 230*eaa51f12SBarry Smith Please send all maintenance requests and questions to the <b>PETSc</b> developers at 231*eaa51f12SBarry Smith <a href="mailto:petsc-maint@mcs.anl.gov"> petsc-maint@mcs.anl.gov </a>. 232*eaa51f12SBarry Smith Please do <em>not</em> send maintenance requests 233*eaa51f12SBarry Smith to the individual <b>PETSc</b> authors; all e-mail to 234*eaa51f12SBarry Smith <b>petsc-maint@mcs.anl.gov</b> is automatically distributed to all of 235*eaa51f12SBarry Smith the <b>PETSc</b> authors, so our response time using this address 236*eaa51f12SBarry Smith will be fastest. 237*eaa51f12SBarry Smith 238*eaa51f12SBarry Smith 239*eaa51f12SBarry Smith<P><HR><P> 240*eaa51f12SBarry Smith<A NAME="MailingList"> <H1 align=center>PETSc Users Mailing List</H1> </A> 241*eaa51f12SBarry Smith 242*eaa51f12SBarry Smith You can join the <b>PETSc</b> users mailing list by sending email to 243*eaa51f12SBarry Smith <a href="mailto:majordomo@mcs.anl.gov"> majordomo@mcs.anl.gov </a> 244*eaa51f12SBarry Smith with the message, "subscribe petsc-users". 245*eaa51f12SBarry Smith We will update users regarding new releases, changes, etc. through this 246*eaa51f12SBarry Smith mailing list. 247*eaa51f12SBarry Smith 248*eaa51f12SBarry Smith<P><HR><P> 249*eaa51f12SBarry Smith<A NAME="Design"> <H1 align=center>The PETSc Design: Talks and Papers</H1> </A> 250*eaa51f12SBarry Smith 251*eaa51f12SBarry Smith <p> 252*eaa51f12SBarry Smith Several papers describe various facets of our design philosophy: 253*eaa51f12SBarry Smith 254*eaa51f12SBarry Smith <MENU> 255*eaa51f12SBarry Smith S. Balay, W. D. Gropp. L. C. McInnes, and B. F. Smith, <A HREF="ftp://info.mcs.anl.gov/pub/petsc/scitools96.ps.gz">Efficient 256*eaa51f12SBarry Smith Management of Parallelism in Object-Oriented Numerical Software Libraries</A>. 257*eaa51f12SBarry Smith To appear in <b>Modern Software Tools in Scientific Computing</b>, E. Arge, 258*eaa51f12SBarry Smith A. M. Bruaset and H. P. Langtangen, Ed., Birkhauser Press, 1997. 259*eaa51f12SBarry Smith <P> 260*eaa51f12SBarry Smith L. C. McInnes and B. F. Smith, <b> PETSc 2.0: A case study of using MPI 261*eaa51f12SBarry Smith to develop numerical software libraries</b> 262*eaa51f12SBarry Smith <A HREF="http://www.mcs.anl.gov/petsc/mpidev.html"> 263*eaa51f12SBarry Smith [View document in hypertext format]</A>. 264*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/mpidev.ps"> 265*eaa51f12SBarry Smith [Get the PostScript version]</A>. This is our contribution to the 266*eaa51f12SBarry Smith 1995 MPI Developers Conference, held at the University of Notre Dame, 267*eaa51f12SBarry Smith June 22 and 23, 1995. 268*eaa51f12SBarry Smith <P> 269*eaa51f12SBarry Smith W. D. Gropp and B. F. Smith, <b> The design of data-structure-neutral 270*eaa51f12SBarry Smith libraries for the iterative solution of sparse linear 271*eaa51f12SBarry Smith systems</b>, Scientific Programming, 1996, Vol. 5, pp. 329--336. 272*eaa51f12SBarry Smith <P> 273*eaa51f12SBarry Smith W. D. Gropp and B. F. Smith, <b> Scalable, extensible, and portable numerical 274*eaa51f12SBarry Smith libraries</b>, Proceedings of the Scalable Parallel Libraries 275*eaa51f12SBarry Smith Conference, IEEE 1994, pp. 87-93. 276*eaa51f12SBarry Smith <P> 277*eaa51f12SBarry Smith W. D. Gropp, L. C. McInnes, and B. F. Smith, <b> Scalable libraries for solving 278*eaa51f12SBarry Smith systems of nonlinear equations and unconstrained minimization 279*eaa51f12SBarry Smith problems</b>, Proceedings of the Scalable 280*eaa51f12SBarry Smith Parallel Libraries Conference, IEEE 1995, pp. 60-67. 281*eaa51f12SBarry Smith <P> 282*eaa51f12SBarry Smith Abstract discussing <b>PETSc</b> design and use within a reacting flow code 283*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/pooma96_abstract.ps"> 284*eaa51f12SBarry Smith in PostScript.</A> 285*eaa51f12SBarry Smith </MENU> 286*eaa51f12SBarry Smith 287*eaa51f12SBarry Smith Talks related to <b>PETSc</b>: 288*eaa51f12SBarry Smith <MENU> 289*eaa51f12SBarry Smith Slides from 1996 SIAM Annual Meeting mini-symposium on Numerical 290*eaa51f12SBarry Smith Simulation of Oil and Gas Reservoirs 291*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/siam96.ps.gz"> 292*eaa51f12SBarry Smith in PostScript</A>. 293*eaa51f12SBarry Smith <P> 294*eaa51f12SBarry Smith Poster from 1996 MPI Developers Meeting 295*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/mpi96.ps.gz"> 296*eaa51f12SBarry Smith in PostScript</A>. 297*eaa51f12SBarry Smith <P> 298*eaa51f12SBarry Smith Three examples demonstrating the use of <b>PETSc</b> for linear, nonlinear 299*eaa51f12SBarry Smith and time dependent problems - slides 300*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/cts.ps"> 301*eaa51f12SBarry Smith in PostScript.</A> 302*eaa51f12SBarry Smith <P> 303*eaa51f12SBarry Smith Workshop on Iterative 304*eaa51f12SBarry Smith Methods for Large Scale Nonlinear Systems, September 1995, 305*eaa51f12SBarry Smith Logan, Utah - slides <A HREF="ftp://info.mcs.anl.gov/pub/petsc/utah.ps.gz"> 306*eaa51f12SBarry Smith in PostScript.</A> 307*eaa51f12SBarry Smith <P> 308*eaa51f12SBarry Smith OONSCI 96, Workshop on Object Oriented Numerical Software, March 1996. 309*eaa51f12SBarry Smith Overview of <b>PETSc</b> 2.0 - slides 310*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/oonsci96_overview.ps.gz"> 311*eaa51f12SBarry Smith in PostScript.</A> 312*eaa51f12SBarry Smith <P> 313*eaa51f12SBarry Smith Discussion of reacting flow application written using <b>PETSc</b> - slides 314*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/oonsci96_app.ps.gz"> 315*eaa51f12SBarry Smith in PostScript.</A> 316*eaa51f12SBarry Smith <P> 317*eaa51f12SBarry Smith Discussion of implementing multigrid algorithms using <b>PETSc</b> and its 318*eaa51f12SBarry Smith abstract multigrid concepts. 319*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/amg_petsc.ps.gz">Suitable 320*eaa51f12SBarry Smith for viewing on screen.</A> 321*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/amg_petsc4.ps.gz">Suitable 322*eaa51f12SBarry Smith for printing.</A> Presented at the Ninth GAMM workshop on Parallel 323*eaa51f12SBarry Smith Multigrid Methods, May 13-17, 1996 324*eaa51f12SBarry Smith <P> 325*eaa51f12SBarry Smith Discussion of <b>PETSc</b> 2.0 for applications. 326*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/sweden96.ps.gz">Suitable 327*eaa51f12SBarry Smith for viewing on screen.</A> 328*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/sweden964.ps.gz">Suitable 329*eaa51f12SBarry Smith for printing.</A> Presented in Stockholm, May 30-31, 1996 330*eaa51f12SBarry Smith <P> 331*eaa51f12SBarry Smith Slides from 1995 MPI Developers Meeting 332*eaa51f12SBarry Smith <A HREF="ftp://info.mcs.anl.gov/pub/petsc/mpidev_slides.ps.gz"> 333*eaa51f12SBarry Smith in PostScript</A>. 334*eaa51f12SBarry Smith </MENU> 335*eaa51f12SBarry Smith 336*eaa51f12SBarry Smith Designing a scalable and portable numerical library requires 337*eaa51f12SBarry Smith consideration of many factors, including choice of parallel 338*eaa51f12SBarry Smith communication technology, data structures, and user interfaces. 339*eaa51f12SBarry Smith The <b>PETSc</b> package uses modern software technology to provide a 340*eaa51f12SBarry Smith portable, flexible, and extensible library environment. 341*eaa51f12SBarry Smith Thus, the package serves a wide range of users with varying 342*eaa51f12SBarry Smith needs and different levels of experience, including algorithmic 343*eaa51f12SBarry Smith researchers as well as black-box and high-performance application 344*eaa51f12SBarry Smith programmers. 345*eaa51f12SBarry Smith 346*eaa51f12SBarry Smith <p> 347*eaa51f12SBarry Smith We use an aggressive data-structure-neutral implementation that 348*eaa51f12SBarry Smith minimizes dependence on particular data structures (even vectors). 349*eaa51f12SBarry Smith This approach permits separation of the implementation language 350*eaa51f12SBarry Smith from the user-interface language and enables the library to 351*eaa51f12SBarry Smith adapt to the user, rather than the other way around. 352*eaa51f12SBarry Smith Issues of parallelism are separated from the choice of algorithms. 353*eaa51f12SBarry Smith 354*eaa51f12SBarry Smith 355*eaa51f12SBarry Smith<P><HR><P> 356*eaa51f12SBarry Smith<A NAME="Tutorials"><H1 align=center>PETSc Tutorials</H1> 357*eaa51f12SBarry Smith 358*eaa51f12SBarry SmithWe are currently developing an on-line tutorial in conjunction with 359*eaa51f12SBarry Smithour <a href="http://www.mcs.anl.gov/petsc/petsc-byoc.html"> PETSc 360*eaa51f12SBarry SmithBring Your Own Code (BYOC) Workshops</a>. Stay tuned for further 361*eaa51f12SBarry Smithdetails. 362*eaa51f12SBarry Smith<P> 363*eaa51f12SBarry Smith 364*eaa51f12SBarry SmithLiyang Xu and Tom Robey have developed an on-line <b>PETSc</b> tutorial at the 365*eaa51f12SBarry Smith<A HREF="http://www.arc.unm.edu/workshop/pmatlib/petsctut.html"> 366*eaa51f12SBarry SmithUniversity of New Mexico.</A> 367*eaa51f12SBarry Smith<P> 368*eaa51f12SBarry Smith 369*eaa51f12SBarry Smith<P><HR><P> 370*eaa51f12SBarry Smith<A NAME="Applications"><H1 align=center>PETSc Computational Science Applications</H1> 371*eaa51f12SBarry Smith 372*eaa51f12SBarry Smith Computational science presents a variety of challenges, including the 373*eaa51f12SBarry Smith coordination of detailed physical models and various algorithmic 374*eaa51f12SBarry Smith approaches. The complexity inherent in these applications demands a 375*eaa51f12SBarry Smith framework such as <b>PETSc</b> that provides broad-based 376*eaa51f12SBarry Smith infrastructure with provisions for easy customization and extension. 377*eaa51f12SBarry Smith 378*eaa51f12SBarry Smith By devoting strict attention to component interoperability, 379*eaa51f12SBarry Smith <b>PETSc</b> enables the integration of independently developed 380*eaa51f12SBarry Smith application modules, which often most naturally employ different 381*eaa51f12SBarry Smith coding styles and data structures. In addition, users can seamlessly 382*eaa51f12SBarry Smith replace models as well as combine and nest algorithms. 383*eaa51f12SBarry Smith 384*eaa51f12SBarry Smith <P> 385*eaa51f12SBarry Smith Several ongoing computational science projects are built around 386*eaa51f12SBarry Smith the <b>PETSc 2.0</b> framework. Within each of these projects 387*eaa51f12SBarry Smith <b>PETSc</b> facilitates the efficient solution of PDEs by 388*eaa51f12SBarry Smith managing the complexity of evolving data structures and detailed 389*eaa51f12SBarry Smith simulation models, and by providing access to the latest linear 390*eaa51f12SBarry Smith algebra solution technology. These projects include: 391*eaa51f12SBarry Smith 392*eaa51f12SBarry Smith <MENU> 393*eaa51f12SBarry Smith <LI> <A HREF="http://www.cs.odu.edu/~keyes/nsf.html"> 394*eaa51f12SBarry Smith <b>Multi-Model Multi-Domain Computational Methods in Aerodynamics and 395*eaa51f12SBarry Smith Acoustics</b> </A> 396*eaa51f12SBarry Smith 397*eaa51f12SBarry Smith <P> 398*eaa51f12SBarry Smith This NSF funded multidisciplinary research project focuses 399*eaa51f12SBarry Smith on the development of effective multi-domain parallel solutions to 400*eaa51f12SBarry Smith multi-model coupled field problems. Here <b>PETSc</b> provides the 401*eaa51f12SBarry Smith foundation for designing advanced domain decomposition software for 402*eaa51f12SBarry Smith use within the context of a numerical laboratory for engineering 403*eaa51f12SBarry Smith analysis. 404*eaa51f12SBarry Smith 405*eaa51f12SBarry Smith <P> 406*eaa51f12SBarry Smith <em>PIs - David Keyes, Alex Pothen (Old Dominion University); 407*eaa51f12SBarry Smith Hafiz Atassi (University of Notre Dame); 408*eaa51f12SBarry Smith Xiao-Chuan Cai (University of Colorado-Boulder); 409*eaa51f12SBarry Smith William Gropp, Lois Curfman McInnes, Barry Smith (Argonne National Laboratory); 410*eaa51f12SBarry Smith Olof Widlund (Courant Institute of Mathematical Sciences, NYU); 411*eaa51f12SBarry Smith David P. Young (Boeing Computer Services).</em> 412*eaa51f12SBarry Smith 413*eaa51f12SBarry Smith <P> 414*eaa51f12SBarry Smith <LI> <A HREF="http://www.mcs.anl.gov/Projects/acti/acti.html"> 415*eaa51f12SBarry Smith <b>Development of a New Generation Framework for Petroleum Reservoir 416*eaa51f12SBarry Smith Simulation</b> </A> 417*eaa51f12SBarry Smith 418*eaa51f12SBarry Smith <P> 419*eaa51f12SBarry Smith The goal of this project, which is an Advanced 420*eaa51f12SBarry Smith Computational Technology Initiative of DOE, is the design of a 421*eaa51f12SBarry Smith prototype code supporting complex reservoir description with 422*eaa51f12SBarry Smith three-dimensional seismic and geostatistical models, irregular 423*eaa51f12SBarry Smith gridding, and multiple model realizations. Within this project 424*eaa51f12SBarry Smith <b>PETSc</b> provides the foundation of linear algebra and nonlinear 425*eaa51f12SBarry Smith solvers for developing an object oriented framework for general 426*eaa51f12SBarry Smith purpose parallel reservoir simulation. 427*eaa51f12SBarry Smith 428*eaa51f12SBarry Smith <P> 429*eaa51f12SBarry Smith <em> PIs - William Gropp, Tom Morgan, Barry 430*eaa51f12SBarry Smith Smith (Argonne National Laboratory); Mary Wheeler, Gary Pope, Kamy 431*eaa51f12SBarry Smith Sepehrnoori, Todd Arbogast, Clint Dawson, Daene McKinney, Larry Lake 432*eaa51f12SBarry Smith (University of Texas at Austin).</em> 433*eaa51f12SBarry Smith </MENU> 434*eaa51f12SBarry Smith 435*eaa51f12SBarry Smith <P><HR><P> 436*eaa51f12SBarry Smith The documentation for <b>PETSc</b> was created using the 437*eaa51f12SBarry Smith <b>doctext</b> and <b>tohtml</b> text processing packages 438*eaa51f12SBarry Smith written by William Gropp. More information regarding this software 439*eaa51f12SBarry Smith may be obtained from 440*eaa51f12SBarry Smith <a href="http://www.mcs.anl.gov/home/gropp">gropp@mcs.anl.gov</a><Br> 441*eaa51f12SBarry Smith 442*eaa51f12SBarry Smith</BODY> 443*eaa51f12SBarry Smith</HTML>