  In this paper we describe the design and implementation of TARANG, a
pseudospectral code to simulate turbulent flows in fluids, magnetohydrodynamics
(MHD), convection, passive scalar, etc. We use the object-oriented features of
C++ to abstract operations involved in the simulation. TARANG has been
validated and used for solving problems in convection and MHD.
