TimeTable Class Reference

Kynema-SGF API: kynema_sgf::actuator::motion::TimeTable Class Reference
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
kynema_sgf::actuator::motion::TimeTable Class Reference

#include <TimeTable.H>

Collaboration diagram for kynema_sgf::actuator::motion::TimeTable:
[legend]

Public Member Functions

void read (const std::string &filename, int num_values, const std::string &extrapolation="hold")
bool empty () const
int num_values () const
const RealListtimes () const
RealList row (int index) const
RealList value (amrex::Real time) const
RealList derivative (amrex::Real time) const
RealList integral (amrex::Real time) const

Private Member Functions

int interval (amrex::Real time) const
void warn_hold (amrex::Real time) const

Private Attributes

std::string m_filename
int m_num_values {0}
RealList m_time
RealList m_values
 Row-major values used directly by interp::linear's ncomp interface.
amrex::Vector< RealListm_prefix_integral
 Exact trapezoidal integral of each completed interpolation interval.
bool m_warned_below {false}
bool m_warned_above {false}
bool m_error_on_extrapolation {false}

Detailed Description

Piecewise-linear, multi-component time history.

Values, derivatives, and integrals use the same interpolation intervals so that motion reconstructed from a velocity history remains consistent.

Member Function Documentation

◆ derivative()

RealList kynema_sgf::actuator::motion::TimeTable::derivative ( amrex::Real time) const
nodiscard

◆ empty()

bool kynema_sgf::actuator::motion::TimeTable::empty ( ) const
inlinenodiscard

◆ integral()

RealList kynema_sgf::actuator::motion::TimeTable::integral ( amrex::Real time) const
nodiscard

◆ interval()

int kynema_sgf::actuator::motion::TimeTable::interval ( amrex::Real time) const
nodiscardprivate

◆ num_values()

int kynema_sgf::actuator::motion::TimeTable::num_values ( ) const
inlinenodiscard

◆ read()

void kynema_sgf::actuator::motion::TimeTable::read ( const std::string & filename,
int num_values,
const std::string & extrapolation = "hold" )

◆ row()

RealList kynema_sgf::actuator::motion::TimeTable::row ( int index) const
nodiscard

◆ times()

const RealList & kynema_sgf::actuator::motion::TimeTable::times ( ) const
inlinenodiscard

◆ value()

RealList kynema_sgf::actuator::motion::TimeTable::value ( amrex::Real time) const
nodiscard

◆ warn_hold()

void kynema_sgf::actuator::motion::TimeTable::warn_hold ( amrex::Real time) const
private

Member Data Documentation

◆ m_error_on_extrapolation

bool kynema_sgf::actuator::motion::TimeTable::m_error_on_extrapolation {false}
private

◆ m_filename

std::string kynema_sgf::actuator::motion::TimeTable::m_filename
private

◆ m_num_values

int kynema_sgf::actuator::motion::TimeTable::m_num_values {0}
private

◆ m_prefix_integral

amrex::Vector<RealList> kynema_sgf::actuator::motion::TimeTable::m_prefix_integral
private

Exact trapezoidal integral of each completed interpolation interval.

◆ m_time

RealList kynema_sgf::actuator::motion::TimeTable::m_time
private

◆ m_values

RealList kynema_sgf::actuator::motion::TimeTable::m_values
private

Row-major values used directly by interp::linear's ncomp interface.

◆ m_warned_above

bool kynema_sgf::actuator::motion::TimeTable::m_warned_above {false}
mutableprivate

◆ m_warned_below

bool kynema_sgf::actuator::motion::TimeTable::m_warned_below {false}
mutableprivate

The documentation for this class was generated from the following files:
  • /home/runner/work/kynema-sgf/kynema-sgf/src/wind_energy/actuator/motion/TimeTable.H
  • /home/runner/work/kynema-sgf/kynema-sgf/src/wind_energy/actuator/motion/TimeTable.cpp