Namespaces | Classes
Control System

Contains control system elements. More...


 Contains functions of time to support the dual frame system.


class  Averager< DerivOrder >
 A weighted exponential averager of \(Q\) and its derivatives implementing Appendix A in [11]. More...
class  Controller< DerivOrder >
 A PND (proportional to Q and N derivatives of Q) controller that computes the control signal:

\[ U(t) = \sum_{k=0}^{N} a_{k} \frac{d^kQ}{dt^k} \]

where N is specified by the template parameter DerivOrder. More...

class  FunctionOfTime
 Base class for FunctionsOfTime. More...
class  FunctionOfTimeUpdater< DerivOrder >
 Responsible for updating the FunctionOfTime map parameters. modify: updates the FunctionOfTime map parameters, changing the maps. measure: provides updated information to the ControlSystem, without modifying the maps. More...
class  FunctionsOfTime::PiecewisePolynomial< MaxDeriv >
 A function that has a piecewise-constant MaxDerivth derivative. More...
class  FunctionsOfTime::SettleToConstant
 Given an initial function \(f(t)\) and its first two derivatives at the matching time \(t_0\), the constant coefficients \(A,B,C\) are computed such that the resulting function of time \(g(t)\) satisfies \(g(t=t_0)=f(t=t_0)\) and approaches a constant value for \(t > t_0\) on a timescale of \(\tau\). The resultant function is

\[ g(t) = A + (B+C(t-t_0)) e^{-(t-t_0)/\tau} \]

where \(\tau\)=decay_time and \(t_0\)=match_time. More...

class  TimescaleTuner
 Manages control system timescales. More...

Detailed Description

Contains control system elements.

The control system manages the time-dependent mapping between frames, such as the fixed computational frame (grid frame) and the inertial frame. The time-dependent parameters of the mapping are adjusted by a feedback control system in order to follow the dynamical evolution of objects such as horizons of black holes or surfaces of neutron stars. For example, in binary black hole simulations the map is typically a composition of maps that include translation, rotation, scaling, shape, etc. Each map under the governance of the control system has an associated time-dependent map parameter \(\lambda(t)\) that is a piecewise Nth order polynomial. At discrete times (called reset times), the control system resets the Nth time derivative of \(\lambda(t)\) to a new constant value, in order to minimize an error function \(Q(t)\) that is specific to each map. At each reset time, the Nth derivative of \(\lambda(t)\) is set to a function \(U(t)\), called the control signal, that is determined by \(Q(t)\) and its time derivatives and time integral. Note that \(\lambda(t)\), \(U(t)\), and \(Q(t)\) can be vectors.

The key components of the control system are:

For additional details describing our control system approach, see [11].