NeoPZ
TPZIntQuadQuarterPoint.h
Go to the documentation of this file.
1 //
2 // TPZIntQuadQuarterPoint.h
3 // PZ
4 //
5 // Created by Philippe Devloo on 6/1/15.
6 //
7 //
8 
9 #ifndef __PZ__TPZIntQuadQuarterPoint__
10 #define __PZ__TPZIntQuadQuarterPoint__
11 
12 #include "pzquad.h"
13 #include <stdio.h>
14 
16 {
18  int fCorner;
20  int fNPoints;
21 
22 public:
23 
24  TPZIntQuadQuarterPoint(int ordksi) : TPZIntQuad(ordksi), fCorner(0)
25  {
26  fNPoints = TPZIntQuad::NPoints()*2;
27  }
28 
29  TPZIntQuadQuarterPoint(const TPZIntQuadQuarterPoint &copy) : TPZIntQuad(copy), fCorner(copy.fCorner), fNPoints(copy.fNPoints)
30  {
31 
32  }
33 
34  virtual int NPoints() const
35  {
36  return fNPoints;
37  }
38 
40  virtual void Point(int ip, TPZVec<REAL> &pos, REAL &w) const;
41 
43  virtual void SetOrder(TPZVec<int> &ord,int type = 0);
44 
46  void SetCorner(int corner)
47  {
48 #ifdef PZDEBUG
49  if (corner < 0 || corner > 3) {
50  DebugStop();
51  }
52 #endif
53  fCorner = corner;
54  }
55 
56  virtual TPZIntPoints* Clone() const
57  {
58  return new TPZIntQuadQuarterPoint(*this);
59  }
60 
61 };
62 
63 #endif /* defined(__PZ__TPZIntQuadQuarterPoint__) */
void SetCorner(int corner)
set the corner where the singularity resides
Contains the TPZInt1d, TPZIntTriang, TPZIntQuad, TPZIntCube3D, TPZIntTetra3D, TPZIntPyram3D and TPZIn...
TPZIntQuadQuarterPoint(const TPZIntQuadQuarterPoint &copy)
virtual int NPoints() const
Returns number of points for the cubature rule related.
Definition: pzquad.cpp:145
virtual TPZIntPoints * Clone() const
Make a clone of the related cubature rule.
Abstract class defining integration rules. Numerical Integration.
Definition: tpzintpoints.h:19
Handles the numerical integration for two-dimensional problems using quadrilateral elements...
Definition: pzquad.h:156
virtual void SetOrder(TPZVec< int > &ord, int type=0)
set the integration order
#define DebugStop()
Returns a message to user put a breakpoint in.
Definition: pzerror.h:20
int fNPoints
number of integration points
virtual int NPoints() const
Returns number of points for the cubature rule related.
virtual void Point(int ip, TPZVec< REAL > &pos, REAL &w) const
return the weight and position of the integration point
int fCorner
corner associated with the integration rule