logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

compose - n-ary function application in expressions (rheolef-7.2)

Author

       Pierre  Saramito  <Pierre.Saramito@imag.fr>

Characteristic

       The compose function supports also the method of characteristic(2) used e.g. for convection-diffusion
       problems:

           characteristic X (-delta_t*uh);
           test v (Xh);
           field lh = integrate (compose(uh,X)*v);

Description

       Compose a n-ary function f with n fields in interpolate(3) and integrate(3) nonlinear expressions.

Example

       The compose operator is used for applying a user-provided function to a field:

           Float f (Float u) { return 1/u + sqrt(u); }
           ...
           field vh = interpolate (Xh, compose(f, uh));

        When two arguments are involved:

           Float g (Float u, Float v) { return v/u + sqrt(u*v); }
           ...
           field wh = interpolate (Xh, compose(g, uh, vh));

        The compose operator supports general n-ary functions and class-functions.

Implementation

       This documentation has been generated from file main/lib/compose.h

Name

       compose - n-ary function application in expressions (rheolef-7.2)

Synopsis

       template <class Function, class... Expressions>
       Expression compose (const Function& f, const Expressions&... exprs);

See Also