⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 controller.h

📁 利用C
💻 H
字号:
// Copyright (C) 2005 Anders Logg.// Licensed under the GNU LGPL Version 2.1.//// First added:  2005-11-02// Last changed: 2005-11-09#ifndef __CONTROLLER_H#define __CONTROLLER_H#include <dolfin/common/types.h>namespace dolfin{  /// Controller for adaptive time step selection, based on the list  /// of controllers presented in "Digital Filters in Adaptive  /// Time-Stepping" by Gustaf Soderlind (ACM TOMS 2003).  class Controller  {  public:        /// Create uninitialized controller    Controller();    /// Create controller with given initial state    Controller(real k, real tol, uint p, real kmax);    /// Destructor    ~Controller();    /// Initialize controller    void init(real k, real tol, uint p, real kmax);    /// Reset controller    void reset(real k);    /// Default controller    real update(real e, real tol);    /// Controller H0211    real updateH0211(real e, real tol);    /// Controller H211PI    real updateH211PI(real e, real tol);    /// No control, simple formula    real updateSimple(real e, real tol);    /// Control by harmonic mean value    real updateHarmonic(real e, real tol);    /// Control by harmonic mean value (no history supplied)    static real updateHarmonic(real knew, real kold, real kmax);  private:    // Time step history    real k0, k1;    // Error history    real e0;    // Asymptotics: e ~ k^p    real p;    // Maximum time step    real kmax;  };}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -