OpenLB 1.7
|
Integration with the trapezoid rule. More...
#include <benchmarkUtil.h>
Public Member Functions | |
TimeIntegrator (T lowerBound, T upperBound, T dt) | |
void | takeValue (int iT, T value) |
void | reset (T lowerBound, T upperBound, T dt) |
T | getResult () |
Protected Attributes | |
T | _lowerBound |
T | _upperBound |
T | _dt |
int | _firstStep |
int | _secondStep |
int | _lastStep |
int | _prelastStep |
std::conditional_t<(P==0), T, KahanSummator< T > > | result |
Integration with the trapezoid rule.
Compute L^P norm on a time interval with the trapezoid rule. For p < infinity, the exact physical interval bounds are respected via linear interpolation from the two neighboring time steps inside the integration domain. P=0 corresponds to the L^\infty norm. For ADf data types, the derivatives of the result contain the derivatives of the integral w.r.t. the derivation variables. Both integrands and integration limits may depend on the derivation variables.
Definition at line 217 of file benchmarkUtil.h.
|
inline |
Definition at line 232 of file benchmarkUtil.h.
References olb::util::TimeIntegrator< T, P >::_prelastStep, olb::util::TimeIntegrator< T, P >::_secondStep, OLB_ASSERT, and olb::util::TimeIntegrator< T, P >::result.
|
inline |
Definition at line 314 of file benchmarkUtil.h.
References olb::util::pow(), and olb::util::TimeIntegrator< T, P >::result.
|
inline |
Definition at line 295 of file benchmarkUtil.h.
References olb::util::TimeIntegrator< T, P >::_dt, olb::util::TimeIntegrator< T, P >::_firstStep, olb::util::TimeIntegrator< T, P >::_lastStep, olb::util::TimeIntegrator< T, P >::_lowerBound, olb::util::TimeIntegrator< T, P >::_prelastStep, olb::util::TimeIntegrator< T, P >::_secondStep, olb::util::TimeIntegrator< T, P >::_upperBound, and olb::util::TimeIntegrator< T, P >::result.
|
inline |
Definition at line 248 of file benchmarkUtil.h.
References olb::util::TimeIntegrator< T, P >::_dt, olb::util::TimeIntegrator< T, P >::_firstStep, olb::util::TimeIntegrator< T, P >::_lastStep, olb::util::TimeIntegrator< T, P >::_lowerBound, olb::util::TimeIntegrator< T, P >::_upperBound, olb::util::abs(), olb::util::max(), olb::util::pow(), and olb::util::TimeIntegrator< T, P >::result.
|
protected |
Definition at line 222 of file benchmarkUtil.h.
|
protected |
Definition at line 224 of file benchmarkUtil.h.
|
protected |
Definition at line 226 of file benchmarkUtil.h.
|
protected |
Definition at line 220 of file benchmarkUtil.h.
|
protected |
Definition at line 227 of file benchmarkUtil.h.
|
protected |
Definition at line 225 of file benchmarkUtil.h.
|
protected |
Definition at line 221 of file benchmarkUtil.h.
|
protected |
Definition at line 229 of file benchmarkUtil.h.