  The ability to design passive structures that perform different operations on
different electromagnetic fields is key to many technologies, from
beam-steering to optical computing. While many techniques have been developed
to optimise structure to achieve specific functionality through inverse design,
designing multi-function materials remains challenging. We present a
semi-analytic method, based on the discrete dipole approximation, to design
multi-functional metamaterials. To demonstrate the generality of our method, we
design a device that operates at optical wavelengths and beams light into
different directions depending on the source polarisation and a device that
works at microwave wavelengths and sorts plane waves by their angle of
incidence.
