See http://www.ee.columbia.edu/ln/dvmm/CU-VIREO374/