The SciNapse code generation system transforms high-level descriptions of partial dif f erential equation problems into customized, efficient, and documented C or Fortran code. Modelers can specify mathematical problems, solution techniques, and I/O formats with a concise blend of mathematical expressions and keywords. An algorithm template language supports convenient extension of the system's built-in knowledge base.artial differential equations can represent the essence of a broad range of problems in engi neering, science, and other technical fields.Those who need to solve systems of these equa tions numerically, however, often do not have the right combination of knowledge-expertise in a technical dis cipline, in numerical analysis, and in computer science or programming-to do an efficient job of it. Therefore many researchers have been attracted to the vision of a problem-solving environment, or PSE, that could provide comprehensive help in solving systems of PDEs.lWe have worked on such PSEs for nearly 10 years, us ing applications ranging from wave propagation2,3 and computational fluid dynamics to financial modeling.4Our current PSE, SciNapse, focuses on code generation; it is a system for solving scientific computing problems without actually programming by hand, and could func tion as part of a larger PSE system. SciNapse has gener ated codes that solve• the unsteady Maxwell's equations in 3D dispersive, anisotropic media;• the Black-Scholes equation for valuation of multi ple-asset derivative securities in computational finance, including the effects of stochastic asset price volatility and interest rates, and discrete sampling of spot prices;• nonlinear, multidimensional, multispecies reaction dif fusion equations for chemical and nuclear applications; and • time-domain solution of viscoelastodynamic equa tions in 3D anisotropic media. SciNapse currently can generate codes that solve a wide range of initial boundary value problems for systems of PDEs, as well as many steady-state problems. The sys tem can apply finite-difference methods to any region that can be mapped to a rectangle in any number of di mensions, though codes using very high dimensions may require excessive computational power to execute. The codes SciNapse generates for these applications can include features such as general coordinate transfor mations and grid generators, various linear solvers and preconditioners, higher-order differencing techniques, automatic interpolation of equation parameters from multidimensional tabular input data, jump conditions in both space and time dimensions, free boundaries, and im position of solution constraints such as positivity. Sci N apse currently does not have the data structures to rep resent finite-element solutions on unstructured grids. It also currently lacks the knowledge to solve PDE prob lems with boundary element, boundary integral, or 32