Ultrasim is an interactive, menu-oriented simulator for finding the sound field from transducers, primarily for medical ultrasound. Ultrasim can handle 1D, 1.5D and 2D linear and phased arrays, and flat and curved arrays with many different footprints such as rectangular and elliptical. It also handles annular arrays, axicons and Bessel transducers. Each simulation consists of a numerical integration of the contribution from all sub-elements of a transducer. The transducer excitation can be either continuous wave (CW) or a broad-band pulsed wave (PW). The simulator is implemented as a toolbox in MATLAB.