OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::opti::projection::Krause< T > Struct Template Reference

#include <projection.h>

+ Inheritance diagram for olb::opti::projection::Krause< T >:
+ Collaboration diagram for olb::opti::projection::Krause< T >:

Public Member Functions

project (T x) const override
 
derivative (T x) const override
 
inverse (T x) const override
 

Detailed Description

template<typename T>
struct olb::opti::projection::Krause< T >

Definition at line 123 of file projection.h.

Member Function Documentation

◆ derivative()

template<typename T >
T olb::opti::projection::Krause< T >::derivative ( T x) const
inlineoverridevirtual

Implements olb::opti::projection::Base< T >.

Definition at line 128 of file projection.h.

128 {
129 return T(2)*x / util::exp(x*x);
130 }
ADf< T, DIM > exp(const ADf< T, DIM > &a)
Definition aDiff.h:455

References olb::util::exp().

+ Here is the call graph for this function:

◆ inverse()

template<typename T >
T olb::opti::projection::Krause< T >::inverse ( T x) const
inlineoverridevirtual

Implements olb::opti::projection::Base< T >.

Definition at line 131 of file projection.h.

131 {
132 return util::sqrt(util::log(T(1)/(T(1)-x)));
133 }
cpu::simd::Pack< T > sqrt(cpu::simd::Pack< T > value)
Definition pack.h:100
ADf< T, DIM > log(const ADf< T, DIM > &a)
Definition aDiff.h:475

References olb::util::log(), and olb::util::sqrt().

+ Here is the call graph for this function:

◆ project()

template<typename T >
T olb::opti::projection::Krause< T >::project ( T x) const
inlineoverridevirtual

Implements olb::opti::projection::Base< T >.

Definition at line 125 of file projection.h.

125 {
126 return T(1) - T(1) / util::exp(x*x);
127 }

References olb::util::exp().

+ Here is the call graph for this function:

The documentation for this struct was generated from the following file: