The tensorial transport benchmark – right-hand-side and exact solution.
The tensorial transport benchmark – right-hand-side and exact solution
Float
f (
const point& x)
const {
}
Float
df_dt (
const point& x)
const {
}
s(0,0) = c0*(1+cos(2*
t));
s(1,1) = c0*(1-cos(2*
t));
s(0,1) =
return s;
}
s(0,0) = c1*(1+cos(2*
t)) - 2*c0*sin(2*
t);
s(1,1) = c1*(1-cos(2*
t)) + 2*c0*sin(2*
t);
s(0,1) =
s(1,0) = c1*sin(2*
t) + 2*c0*cos(2*
t);
return s;
}
{
xt = point(
x0[0]*cos(
t) -
x0[1]*sin(
t),
vt = point(-
x0[0]*sin(
t) -
x0[1]*cos(
t),
}
};
return -
_s.time_derivative(x);
}
chi (Float nu, Float t = 0):
_s(nu, t) {}
};
see the point page for the full documentation
see the tensor page for the full documentation
rheolef::details::is_vec dot
tensor_basic< T > exp(const tensor_basic< T > &a, size_t d)
T norm2(const vec< T, M > &x)
norm2(x): see the expression page for the full documentation
tensor operator()(const point &x) const
tensor operator()(const point &x) const
Float f(const point &x) const
Float df_dt(const point &x) const
tensor time_derivative(const point &x) const