IFEM 90A354
Interface.h
Go to the documentation of this file.
1// $Id$
2//==============================================================================
12//==============================================================================
13
14#ifndef _INTERFACE_H
15#define _INTERFACE_H
16
17
18namespace ASM
19{
23 struct Interface
24 {
25 int master = 0;
26 int slave = 0;
27 int midx = 0;
28 int sidx = 0;
29 int orient = 0;
30 int dim = 0;
31 int basis = 0;
32 int thick = 1;
33 };
34
35
40 {
41 public:
43 virtual ~InterfaceChecker() = default;
49 virtual short int hasContribution(int iel,
50 int I, int J, int K = -1) const = 0;
58 virtual short int elmBorderMask(double u0, double u1,
59 double v0, double v1,
60 double w0 = 0.0, double w1 = 1.0) const
61 {
62 return 63; // = 1+2+4+8+16+32 (i.e., don't mask off any boundary)
63 }
64 };
65}
66
67#endif
static SystemMatrix * K
Pointer to coefficient matrix A.
Definition EigSolver.C:91
Base class to check for internal boundary integrand contributions.
Definition Interface.h:40
virtual short int elmBorderMask(double u0, double u1, double v0, double v1, double w0=0.0, double w1=1.0) const
Returns a status mask based on the element boundary parameters.
Definition Interface.h:58
virtual short int hasContribution(int iel, int I, int J, int K=-1) const =0
Returns non-zero if the specified element has contributions.
virtual ~InterfaceChecker()=default
Default destructor.
Assembly scope.
Definition SIMdummy.h:24
Struct for representing a domain interface.
Definition Interface.h:24
int sidx
Index of boundary on slave.
Definition Interface.h:28
int dim
Dimension of boundary.
Definition Interface.h:30
int basis
Basis of boundary.
Definition Interface.h:31
int midx
Index of boundary on master.
Definition Interface.h:27
int thick
Thickness of connection.
Definition Interface.h:32
int master
Master patch (global number)
Definition Interface.h:25
int orient
Orientation flag (for 3D patches)
Definition Interface.h:29
int slave
Slave patch (global number)
Definition Interface.h:26