template <class ArgType> Circulant<ArgType> makeCirculant(const Eigen::MatrixBase<ArgType>& arg) { return Circulant<ArgType>(arg.derived()); }