limiter(3rheolef)

πŸ“¦
version 7.2 Β· 4 versions
, in debian trixie, ubuntu noble, ubuntu questing

πŸ’… limiter β€” the discontinuous Galerkin slope limiter (from rheolef-7.2)

okay bestie, this is limiter(3rheolef) and it is literally the function that tames your wild discontinuous fields. buckle up πŸŽ€


✨ NAME ✨

limiter β€” discontinuous Galerkin slope limiter, and yes it's from rheolef-7.2 πŸ¦‹


🌸 SYNOPSIS 🌸

template <class T, class M>
field_basic<T,M>
limiter (
   const field_basic<T,M>& uh,
   const T&                bar_g_S = 1.0,
   const limiter_option&   opt = limiter_option());

πŸ’– DESCRIPTION πŸ’–

so this function returns a slope limited field for any discontinuous approximation you throw at it. any. it's giving generous ✨

like, watch:

geo omega ('square');
space Xh (omega, 'P1d');
field uh (Xh);
...
field vh = limiter(uh);

and boom, vh is your limited field. iconic behavior πŸ’…

it implements the minmod_TVB limiter for hyperbolic nonlinear problems approximated by discontinuous Galerkin methods. See the usersguide for details and examples β€” fr fr, the usersguide has the receipts πŸ“–


πŸŽ€ OPTIONS πŸŽ€

here's the whole option struct, copied exactly because I do not play with your flags:

struct limiter_option {
  bool active;
  Float theta; // > 1, see Coc-1998, P. 209
  Float M;     // M=max|u''(t=0)(x)| at x where u'(t)(x)=0 :extremas
  limiter_option() : active(true), theta(1.5), M(1) {}
};

and the field-by-field tea β˜•:

  • active β€” is the limiter turned on or nah. defaults to true, so bestie, by default it's active πŸ’š
  • theta β€” has to be > 1, see Coc-1998, P. 209. defaults to 1.5 πŸ‘‘
  • M β€” that's M=max|u''(t=0)(x)| at the x where u'(t)(x)=0, i.e. the extremas. defaults to 1 🌈
  • limiter_option() β€” the default constructor, which sets active(true), theta(1.5), M(1). all the defaults, no cap 🧚

πŸ”₯ IMPLEMENTATION πŸ”₯

This documentation has been generated from file main/lib/limiter.h β€” that's the origin story, periodt.


πŸ‘‘ AUTHOR πŸ‘‘

Pierre Saramito <Pierre.Saramito@imag.fr> β€” the mastermind, the main character of this header πŸ’œ


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.

bestie I need you to actually read that warranty line, okay? there is NO WARRANTY. none. zero. it's giving "use at your own risk" but legally 😭

and that's the whole page!! go limit some slopes, you absolute icon 🫢

signing off from rheolef, Version 7.2, where limiter(3rheolef) lives πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from