  We describe a new hybrid N-body/hydrodynamical code based on the
particle-mesh (PM) method and the piecewise-parabolic method (PPM) for use in
solving problems related to the evolution of large-scale structure, galaxy
clusters, and individual galaxies. The code, named COSMOS, possesses several
new features which distinguish it from other PM-PPM codes. In particular, to
solve the Poisson equation we have written a new multigrid solver which can
determine the gravitational potential of isolated matter distributions and
which properly takes into account the finite-volume discretization required by
PPM. All components of the code are constructed to work with a nonuniform mesh,
preserving second-order spatial differences. The PPM code uses vacuum boundary
conditions for isolated problems, preventing inflows when appropriate. The PM
code uses a second-order variable-timestep time integration scheme. Radiative
cooling and cosmological expansion terms are included. COSMOS has been
implemented for parallel computers using the Parallel Virtual Machine (PVM)
library, and it features a modular design which simplifies the addition of new
physics and the configuration of the code for different types of problems. We
discuss the equations solved by COSMOS and describe the algorithms used, with
emphasis on these features. We also discuss the results of tests we have
performed to establish that COSMOS works and to determine its range of
validity.
