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