Xfem
The Xfem Plugin
xfemSolver.h
Go to the documentation of this file.
1 /************************************************************************
2 **
3 ** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4 ** All rights reserved.
5 **
6 ** This file is part of the "GeMA" software. It's use should respect
7 ** the terms in the license agreement that can be found together
8 ** with this source code.
9 ** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10 ** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11 ** A PARTICULAR PURPOSE.
12 **
13 ************************************************************************/
14 
24 #ifndef _GEMA_XFEM_SOLVER_H_
25 #define _GEMA_XFEM_SOLVER_H_
26 
27 #include <gmpFemNLSolver.h>
28 #include "xfemOptions.h"
29 
30 class XfemMesh;
31 
34 class XfemSolver : public GmpFemNLSolver
35 {
36 public:
37  XfemSolver(XfemMesh* mesh, GmSimulationData* simulation, const QList<GmpFemPhysics*>& physics,
38  GmNumSolver* solver, const GmpFemSolverOptions& options, const XfemOptions& xfemOptions, const GmLogCategory& logger);
39  virtual ~XfemSolver(void);
40 
41  virtual bool pre();
42  virtual bool preEmbedded();
43  virtual bool pos();
44  GmpFemPhysics* getPhysics() { return _physics[0]; }
45  virtual const QList<QPair<GmValueAccessor*, QList<GmValueAccessor*>>> enrichedAccessorPairs();
46  //virtual const QList<QPair<GmValueAccessor*, GmValueAccessor*> > enrichedAccessorPairs();
47 
48 protected:
49  //virtual bool step_static_nonlinear(double, double* newt, double* err, bool* conv, int* niter, bool eval);
50 
51 private:
54  QList<GmpFemPhysics*> _physics; // physics data
55 };
56 
57 #endif
GmSimulationData * _SimulationData
Simulation data.
Definition: xfemSolver.h:53
Definition: xfemOptions.h:29
Declaration of the xfemOptions class.
virtual bool preEmbedded()
Runs the preprocessor .
Definition: xfemSolver.cpp:330
Basic class for a XFEM mesh. This is the basic mesh interface for xfem problems adding enrichment cap...
Definition: xfemMesh.h:49
Extension of the FEM linear solver for the XFEM method.
Definition: xfemSolver.h:34
virtual bool pre()
Runs the preprocessor .
Definition: xfemSolver.cpp:272
XfemOptions _xfemOptions
The set of xfem options.
Definition: xfemSolver.h:52
virtual ~XfemSolver(void)
Destructor.
Definition: xfemSolver.cpp:60