亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? diff_system.h

?? 一個(gè)用來實(shí)現(xiàn)偏微分方程中網(wǎng)格的計(jì)算庫
?? H
字號(hào):
// $Id: diff_system.h 2789 2008-04-13 02:24:40Z roystgnr $// The libMesh Finite Element Library.// Copyright (C) 2002-2007  Benjamin S. Kirk, John W. Peterson  // This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Lesser General Public// License as published by the Free Software Foundation; either// version 2.1 of the License, or (at your option) any later version.  // This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU// Lesser General Public License for more details.  // You should have received a copy of the GNU Lesser General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA#ifndef __diff_system_h__#define __diff_system_h__// C++ includes// Local Includes#include "dense_matrix.h"#include "dense_submatrix.h"#include "dense_subvector.h"#include "dense_vector.h"#include "linear_implicit_system.h"#include "transient_system.h"// Forward Declarationsclass TimeSolver;template <typename T> class NumericVector;/** * This class provides a specific system class.  It aims * to generalize any system, linear or nonlinear, which * provides both a residual and a Jacobian. * * This class is part of the new DifferentiableSystem framework, * which is still experimental.  Users of this framework should * beware of bugs and future API changes. * * @author Roy H. Stogner 2006 */// ------------------------------------------------------------// DifferentiableSystem class definitionclass DifferentiableSystem : public ImplicitSystem{public:  /**   * Constructor.  Optionally initializes required   * data structures.   */  DifferentiableSystem (EquationSystems& es,	         const std::string& name,	         const unsigned int number);  /**   * Destructor.   */  virtual ~DifferentiableSystem ();  /**   * The type of system.   */  typedef DifferentiableSystem sys_type;  /**   * The type of the parent.   */  typedef ImplicitSystem Parent;    /**   * Clear all the data structures associated with   * the system.    */  virtual void clear ();  /**   * Reinitializes the member data fields associated with   * the system, so that, e.g., \p assemble() may be used.   */  virtual void reinit ();     /**   * Prepares \p matrix and \p rhs for matrix assembly.   * Users should not reimplement this   */  virtual void assemble ();  /**   * Evaluates \p matrix and/or \p rhs at the current iterate   */  virtual void assembly (bool get_residual, bool get_jacobian) = 0;  /**   * Adds the time derivative contribution on \p elem to elem_residual.   * If this method receives request_jacobian = true, then it   * should compute elem_jacobian and return true if possible.  If   * elem_jacobian has not been computed then the method should   * return false.   *   * Users need to reimplement this for their particular PDE.   * To implement the physics model du/dt = F(u), the user should   * examine u = elem_solution and add (F(u), phi_i) to    * elem_residual.   */  virtual bool element_time_derivative (bool request_jacobian) {    return request_jacobian;  }  /**   * Adds the constraint contribution on \p elem to elem_residual.   * If this method receives request_jacobian = true, then it   * should compute elem_jacobian and return true if possible.  If   * elem_jacobian has not been computed then the method should   * return false.   *   * Users may need to reimplement this for their particular PDE.   * To implement the constraint 0 = G(u), the user should   * examine u = elem_solution and add (G(u), phi_i) to    * elem_residual.   */  virtual bool element_constraint (bool request_jacobian) {    return request_jacobian;  }  /**   * \p compute_internal_sides is false by default, indicating that   * side_* computations will only be done on boundary sides.  If   * compute_internal_sides is true, computations will be done   * on sides between elements as well.   */  bool compute_internal_sides;  /**   * Adds the time derivative contribution on \p side of \p elem to   * elem_residual.   * If this method receives request_jacobian = true, then it   * should compute elem_jacobian and return true if possible.  If   * elem_jacobian has not been computed then the method should   * return false.   *   * Users may need to reimplement this for their particular PDE   * depending on the boundary conditions.   */  virtual bool side_time_derivative (bool request_jacobian) {    return request_jacobian;  }  /**   * Adds the time derivative contribution on \p side of \p elem to   * elem_residual.   * If this method receives request_jacobian = true, then it   * should compute elem_jacobian and return true if possible.  If   * elem_jacobian has not been computed then the method should   * return false.   *   * Users may need to reimplement this for their particular PDE   * depending on the boundary conditions.   */  virtual bool side_constraint (bool request_jacobian) {    return request_jacobian;  }  /**   * Executes a postprocessing loop over all elements, and if   * \p postprocess_sides is true over all sides.   */  virtual void postprocess () = 0;  /**   * If \p postprocess_sides is true (it is false by default), the postprocessing   * loop will loop over all sides as well as all elements.   */  bool postprocess_sides;  /**   * Does any work that needs to be done on \p elem in a postprocessing loop.   */  virtual void element_postprocess () {}   /**   * Does any work that needs to be done on \p side of \p elem in a   * postprocessing loop.   */  virtual void side_postprocess () {}   /**   * Tells the DiffSystem that variable var is evolving with   * respect to time.  In general, the user's init() function   * should call time_evolving() for any variables which   * behave like du/dt = F(u), and should not call time_evolving()   * for any variables which behave like 0 = G(u).   *   * Most derived systems will not have to reimplment this function; however   * any system which reimplements mass_residual() may have to reimplement   * time_evolving() to prepare data structures.   */  virtual void time_evolving (unsigned int var) {    libmesh_assert(_time_evolving.size() > var);    _time_evolving[var] = true;  }  /**   * Adds a mass vector contribution on \p elem to elem_residual.   * If this method receives request_jacobian = true, then it   * should compute elem_jacobian and return true if possible.  If   * elem_jacobian has not been computed then the method should   * return false.   *   * Most problems can use the reimplementation in   * FEMSystem::mass_residual; few users will need to reimplement   * this themselves.   */  virtual bool mass_residual (bool request_jacobian) {    return request_jacobian;  }  /**   * Invokes the solver associated with the system.  For steady state   * solvers, this will find a root x where F(x) = 0.  For transient   * solvers, this will integrate dx/dt = F(x).   */  virtual void solve ();   /**   * @returns \p "Differentiable".  Helps in identifying   * the system type in an equation system file.   *///  virtual std::string system_type () const { return "Differentiable"; }  /**   * A pointer to the solver object we're going to use.   * This must be instantiated by the user before solving!   */  AutoPtr<TimeSolver> time_solver;  /**   * For time-dependent problems, this is the time t for which the current   * nonlinear_solution is defined.   */  Real time;  /**   * For time-dependent problems, this is the amount delta t to advance the   * solution in time.   */  Real deltat;  /**   * Set print_residual_norms to true to print |U| whenever it is   * used in an assembly() call   */  bool print_solution_norms;  /**   * Set print_solutions to true to print U whenever it is used in an   * assembly() call   */  bool print_solutions;  /**   * Set print_residual_norms to true to print |F| whenever it is assembled.   */  bool print_residual_norms;  /**   * Set print_residuals to true to print F whenever it is assembled.   */  bool print_residuals;  /**   * Set print_jacobian_norms to true to print |J| whenever it is assembled.   */  bool print_jacobian_norms;  /**   * Set print_jacobians to true to print J whenever it is assembled.   */  bool print_jacobians;  /**   * Set print_element_jacobians to true to print each J_elem contribution.   */  bool print_element_jacobians;  /**   * Element by element components of nonlinear_solution   * as adjusted by a time_solver   */  DenseVector<Number> elem_solution;  std::vector<DenseSubVector<Number> *> elem_subsolutions;  /**   * Element by element components of nonlinear_solution   * at a fixed point in a timestep, for optional use by e.g.   * stabilized methods   */  DenseVector<Number> elem_fixed_solution;  std::vector<DenseSubVector<Number> *> elem_fixed_subsolutions;  /**   * A boolean to be set to true by systems using elem_fixed_solution,   * so that the library code will create it.   */  bool use_fixed_solution;  /**   * The derivative of elem_solution with respect to the nonlinear solution,   * for use by systems constructing jacobians with elem_fixed_solution   * based methods   */  Real elem_solution_derivative;  /**   * The derivative of elem_fixed_solution with respect to the nonlinear   * solution, for use by systems constructing jacobians with   * elem_fixed_solution based methods   */  Real fixed_solution_derivative;  /**   * Element residual vector   */  DenseVector<Number> elem_residual;  /**   * Element jacobian: derivatives of elem_residual with respect to   * elem_solution   */  DenseMatrix<Number> elem_jacobian;  /**   * Element residual subvectors and Jacobian submatrices   */  std::vector<DenseSubVector<Number> *> elem_subresiduals;  std::vector<std::vector<DenseSubMatrix<Number> *> > elem_subjacobians;  /**    * Global Degree of freedom index lists   */  std::vector<unsigned int> dof_indices;  std::vector<std::vector<unsigned int> > dof_indices_var;protected:  /**   * Initializes the member data fields associated with   * the system, so that, e.g., \p assemble() may be used.   */  virtual void init_data ();  /**   * Stores bools to tell us which variables are evolving   * in time and which are just constraints   */  std::vector<bool> _time_evolving;  /**   * Clear data pointers associated with this system.   */  void clear_diff_ptrs ();};#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av亚洲精华国产精华精华| 欧美在线免费观看视频| 亚洲免费电影在线| 日韩欧美一区二区在线视频| 不卡一区二区在线| 韩国在线一区二区| 亚洲成人av电影| 亚洲色图制服丝袜| 国产人伦精品一区二区| 欧美高清激情brazzers| 91视频一区二区三区| 国产美女主播视频一区| 日韩高清一级片| 一区二区三区四区激情 | 亚洲啪啪综合av一区二区三区| 欧美一二三四在线| 在线观看视频一区二区欧美日韩 | 91福利社在线观看| 国产精品一区专区| 久久国产夜色精品鲁鲁99| 午夜精品福利久久久| 亚洲另类中文字| 亚洲色图清纯唯美| 国产精品国产三级国产有无不卡| 精品1区2区在线观看| 日韩一区二区三区视频| 欧美一区二区黄| 欧美一级在线观看| 日韩欧美亚洲国产另类| 6080日韩午夜伦伦午夜伦| 91精品国产欧美日韩| 欧美亚洲国产bt| 欧美色图片你懂的| 欧美揉bbbbb揉bbbbb| 欧美日韩国产高清一区| 欧美性感一区二区三区| 91黄色免费观看| 欧美特级限制片免费在线观看| 在线看一区二区| 欧美在线观看视频一区二区三区| 欧美中文字幕不卡| 欧美在线观看你懂的| 欧美另类z0zxhd电影| 欧美日韩一级大片网址| 欧美日韩国产首页| 91麻豆精品国产91久久久久久| 欧美一区二区三区电影| 久久综合九色综合97婷婷 | 亚洲夂夂婷婷色拍ww47| 一区二区高清在线| 日韩在线一区二区| 久久国产三级精品| 国产一区 二区 三区一级| 成人午夜精品一区二区三区| 99久久久精品免费观看国产蜜| 91免费国产在线| 欧美日韩午夜在线视频| 欧美一级高清片| 国产欧美一区在线| 亚洲精品中文在线观看| 日韩在线播放一区二区| 国产精品一卡二卡| 99re成人精品视频| 欧美日韩一区 二区 三区 久久精品| 91麻豆精品国产自产在线观看一区 | 久久久久免费观看| 国产精品美女久久久久久| 亚洲午夜三级在线| 久久精工是国产品牌吗| 99久久国产免费看| 欧美一级在线视频| 中文字幕在线不卡一区二区三区| 亚洲精品第一国产综合野| 青青草国产精品亚洲专区无| 成人三级在线视频| 欧美精品国产精品| 国产精品色在线观看| 亚洲国产欧美一区二区三区丁香婷| 日韩**一区毛片| 不卡的av中国片| 欧美美女网站色| 国产精品你懂的| 麻豆国产欧美日韩综合精品二区| 国产91富婆露脸刺激对白| 欧美精品在线一区二区三区| 国产欧美一区二区精品忘忧草 | 日本欧美一区二区三区| 成人国产精品免费观看视频| 欧美精品在线观看一区二区| 国产欧美日本一区视频| 日本午夜一区二区| 色天使久久综合网天天| 2020日本不卡一区二区视频| 亚洲综合视频在线| 懂色av一区二区夜夜嗨| 69精品人人人人| 亚洲永久免费视频| 成人av综合在线| 久久精品一区蜜桃臀影院| 日本少妇一区二区| 91极品美女在线| 一区在线观看视频| 高清国产一区二区| 久久一区二区三区四区| 日韩高清中文字幕一区| 欧美伊人精品成人久久综合97 | 亚洲一区二区三区在线看| 懂色一区二区三区免费观看| 日韩精品一区二区三区视频| 亚洲午夜在线视频| 色综合久久久久综合体| 国产欧美日韩综合精品一区二区| 免费在线观看一区| 欧美日韩国产一二三| 亚洲卡通欧美制服中文| eeuss鲁片一区二区三区在线观看| 久久综合色8888| 极品少妇xxxx偷拍精品少妇| 51午夜精品国产| 午夜一区二区三区视频| 欧美日韩黄色一区二区| 亚洲精品国产精华液| 91毛片在线观看| 亚洲狠狠丁香婷婷综合久久久| 91在线porny国产在线看| 欧美高清在线一区二区| 成人黄色大片在线观看| 中文一区二区在线观看| 国产成人在线视频网站| 久久久噜噜噜久噜久久综合| 国产一区二区精品久久91| 久久老女人爱爱| 国产黄色91视频| 欧美激情在线免费观看| 大桥未久av一区二区三区中文| 国产精品色在线观看| 95精品视频在线| 一区二区三区在线观看国产| 欧美日韩在线播放三区| 偷拍与自拍一区| 欧美va亚洲va香蕉在线| 黄色精品一二区| 国产精品五月天| 色88888久久久久久影院按摩| 亚洲欧洲另类国产综合| 色婷婷久久久综合中文字幕| 亚洲国产成人porn| 欧美一区二区成人| 国产一区二区在线看| 国产精品久线观看视频| 色诱视频网站一区| 亚洲777理论| 精品国产乱码久久久久久1区2区| 国产精品一区二区三区网站| 国产精品久久久久婷婷二区次| 91麻豆文化传媒在线观看| 亚洲动漫第一页| 欧美精品一区二区三区蜜臀| 成人sese在线| 亚洲综合色视频| 日韩三区在线观看| 国产福利精品导航| 亚洲天堂久久久久久久| 91精品国产一区二区三区蜜臀| 国产精品99久久久久久宅男| 亚洲激情六月丁香| 欧美一二三四在线| 成人高清在线视频| 亚洲国产aⅴ成人精品无吗| 精品国产乱码91久久久久久网站| av网站一区二区三区| 偷拍一区二区三区四区| 国产女主播一区| 欧美精品 日韩| 国产成人无遮挡在线视频| 亚洲香肠在线观看| 国产色综合久久| 91激情五月电影| 国产一区91精品张津瑜| 亚洲电影一区二区| 久久久九九九九| 精品视频在线免费| 国产激情一区二区三区| 天堂av在线一区| 亚洲特级片在线| 精品国产1区二区| 色吊一区二区三区| 国产呦萝稀缺另类资源| 亚洲综合免费观看高清完整版| 久久亚洲精精品中文字幕早川悠里| 色婷婷综合在线| 国产激情91久久精品导航| 日韩成人伦理电影在线观看| 亚洲色图欧美偷拍| 久久先锋影音av鲁色资源| 欧美区一区二区三区| 91丨porny丨国产入口| 国产精品亚洲а∨天堂免在线| 青青草精品视频| 亚洲高清视频在线|