homotopyode.h

来自「利用C」· C头文件 代码 · 共 74 行

H
74
字号
// Copyright (C) 2005-2006 Anders Logg.// Licensed under the GNU LGPL Version 2.1.//// First added:  2005// Last changed: 2006-08-21#ifndef __HOMOTOPY_ODE_H#define __HOMOTOPY_ODE_H#include <dolfin/common/types.h>#include "ComplexODE.h"namespace dolfin{  class Homotopy;  /// This is the base class for complex homotopy ODEs. One ODE is  /// generated by the class Homotopy for each homotopy path.    class HomotopyODE : public ComplexODE  {  public:      /// Current state, solving ODE or playing end game    enum State { ode, endgame };    /// Constructor    HomotopyODE(Homotopy& homotopy, uint n, real T);    /// Destructor    ~HomotopyODE();    /// Return initial value for given component    void z0(complex z[]);    /// Evaluate right-hand side    void f(const complex z[], real t, complex y[]);        /// Compute product y = Mx for implicit system    void M(const complex x[], complex y[], const complex z[], real t);    /// Compute product y = Jx for Jacobian J    void J(const complex x[], complex y[], const complex u[], real t);    /// Update ODE, return false to stop (optional)    bool update(const complex z[], real t, bool end);    /// Get state, solving ODE or playing end game    State state();  private:    // Monitor homotopy    void monitor(const complex z[], real t);    // The homotopy    Homotopy& homotopy;    // Size of system    uint n;    // Current state    State _state;    // Array of values used for temporary storage    complex* tmp;  };}#endif

⌨️ 快捷键说明

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