|
NonlinearViscousTensor & | current () const |
|
virtual | ~LinearizedVTOp () |
|
| LinearizedVTOp (NonlinearViscousTensor *a_currentState, Vector< LevelData< FArrayBox > *> &a_u, Real a_h, Real m_err, Real m_umin, bool m_hAdaptive, Vector< DisjointBoxLayout > &a_grids, Vector< int > &a_refRatio, Vector< ProblemDomain > &a_domains, Vector< RealVect > &a_dxs, int a_lBase, int a_numMGSmooth, int a_numMGIter, LinearizationMode a_mode) |
|
virtual void | setU (Vector< LevelData< FArrayBox > *> &a_u) |
|
virtual void | applyOp (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_v, bool a_homogeneous=false) |
|
virtual void | residual (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_v, const Vector< LevelData< FArrayBox > *> &a_rhs, bool a_homogeneous=false) |
|
virtual void | outerResidual (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_u, const Vector< LevelData< FArrayBox > *> &a_rhs, bool a_homogeneous=false) |
|
virtual void | outerLHS (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_u, bool a_homogeneous=false) |
|
virtual void | preCond (Vector< LevelData< FArrayBox > *> &a_cor, const Vector< LevelData< FArrayBox > *> &a_residual) |
|
virtual void | create (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_rhs) |
|
virtual void | clear (Vector< LevelData< FArrayBox > *> &a_lhs) |
|
virtual void | clearStorage (Vector< LevelData< FArrayBox > * > &a_lhs) |
|
virtual void | assign (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_rhs) |
|
virtual Real | dotProduct (const Vector< LevelData< FArrayBox > *> &a_1, const Vector< LevelData< FArrayBox > *> &a_2) |
|
virtual void | incr (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_x, Real a_scale) |
|
virtual void | axby (Vector< LevelData< FArrayBox > *> &a_lhs, const Vector< LevelData< FArrayBox > *> &a_x, const Vector< LevelData< FArrayBox > *> &a_y, Real a_a, Real a_b) |
|
virtual void | scale (Vector< LevelData< FArrayBox > *> &a_lhs, const Real &a_scale) |
|
virtual Real | norm (const Vector< LevelData< FArrayBox > *> &a_rhs, int a_ord) |
|
virtual void | setToZero (Vector< LevelData< FArrayBox > *> &a_lhs) |
|
LinearOp implementation which uses a finite difference approximation to evaluate L v = 1/h * ( f(u + h*v) - f(u)) at the current iterate u, where f is a nonlinear function f:<Vector<LevelData<FArrayBox>*> -> <Vector<LevelData<FArrayBox>*> which is defined in terms of Chombo's MultilevelLinearOp interface. If we say that an operator L[u] is a linear operator defined at the state u, then f(u) = L[u]u, and so ( f(u + h*v) - f(u)) = L[u+hv](u+hv) - L[u](u) JFNK methods need a preconditioner: in this case we employ the multigrid method of MultilevelLinearOp<FArrayBox>, with its operator factory defined at u.