characteristic(2rheolef) | rheolef-7.0 | characteristic(2rheolef) |
characteristic - the Lagrange-Galerkin method implemented
The class characteristic implements the Lagrange-Galerkin method:
It is the extension of the method of characteristic from the finite
difference to the finite element context.
Consider the bilinear form lh defined by
/
|
lh(x) = | uh(x+dh(x)) v(x) dx
|
/ Omega
/
|
lh(x) = | uh(X(x)) v(x) dx
|
/ Omega
For instance, in Lagrange-Galerkin methods,
the deformation field dh(x)=-dt*uh(x)
where uh is the advection field and dt a time step.
The following code implements the computation of lh:
field dh = ...;
field uh = ...;
characteristic X (dh);
test v (Xh);
field lh = integrate (compose(uh, X)*v, qopt);
template<class T, class M = rheo_default_memory_model> class characteristic_basic : public smart_pointer<characteristic_rep<T,M> > { public:
typedef characteristic_rep<T,M> rep;
typedef smart_pointer<rep> base; // allocator:
characteristic_basic(const field_basic<T,M>& dh); // accesors:
const field_basic<T,M>& get_displacement() const;
const characteristic_on_quadrature<T,M>&
get_pre_computed (
const space_basic<T,M>& Xh,
const field_basic<T,M>& dh,
const quadrature_option& qopt) const; }; typedef characteristic_basic<Float> characteristic;
Copyright (C) 2000-2018 Pierre Saramito <Pierre.Saramito@imag.fr> GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
rheolef-7.0 | rheolef-7.0 |