To finish the thought, you can get a function to take any quantity of volumetric flow/sqrt(pressure) as follows (using the previous code) :
namespace boost {
namespace units {
typedef
make_dimension_list< list< dim< length_base_dimension,static_rational<7,2> >,
list< dim< mass_base_dimension,static_rational<-1,2> >, dimensionless_type > > >::type funky_type;
} // namespace units
} // namespace boost
using namespace boost::units;
template<class Y,class System>
void f2(const quantity<unit<funky_type,System>,Y>& arg)
{
std::cout << quantity<Kv,Y>(arg) << std::endl;
}
int main(void)
{
f2(1.0*Kv());
f2(1.0*Cv());
}
Matthias