src/fem/nedelecelement.cpp File Reference

#include <iomanip>
#include "colarray/linalg.h"
#include "nedelecelement.h"

Include dependency graph for nedelecelement.cpp:

Go to the source code of this file.

Defines

#define CROSS(A, B, k)   (A((k+1)%3,0)*B((k+2)%3,0) - A((k+2)%3,0)*B((k+1)%3,0))
#define CROSS2(A, B, c, k)   (A((k+1)%3,c)*B((k+2)%3,0) - A((k+2)%3,c)*B((k+1)%3,0))
#define DOF_LIN_1(DOF, IND0, IND1)
#define DOF_LIN_2(DOF, IND0, IND1)
#define DOF_QUAD(DOF, IND0, IND1, IND2)
#define CURL_DOF_LIN_1(DOF, IND0, IND1)
#define CURL_DOF_QUAD(DOF, IND0, IND1, IND2)


Define Documentation

#define CROSS ( A,
B,
 )     (A((k+1)%3,0)*B((k+2)%3,0) - A((k+2)%3,0)*B((k+1)%3,0))

Definition at line 22 of file nedelecelement.cpp.

Referenced by NedelecElement::evalElementFunctions().

#define CROSS2 ( A,
B,
c,
 )     (A((k+1)%3,c)*B((k+2)%3,0) - A((k+2)%3,c)*B((k+1)%3,0))

Definition at line 23 of file nedelecelement.cpp.

Referenced by NedelecElement::evalElementFunctions().

#define CURL_DOF_LIN_1 ( DOF,
IND0,
IND1   ) 

Value:

coeff = (tet->get_edge_orientation(DOF) ? 1.0 : -1.0) * dof[DOF]; \
  f.x += coeff * 2 * C(IND0,IND1).x; \
  f.y += coeff * 2 * C(IND0,IND1).y; \
  f.z += coeff * 2 * C(IND0,IND1).z;

Referenced by NedelecElement::eval_curl_simplex().

#define CURL_DOF_QUAD ( DOF,
IND0,
IND1,
IND2   ) 

Value:

coeff = dof[DOF]; \
  f.x += coeff * (xi[IND1] * C(IND2,IND0).x + xi[IND2] * C(IND1,IND0).x); \
  f.y += coeff * (xi[IND1] * C(IND2,IND0).y + xi[IND2] * C(IND1,IND0).y); \
  f.z += coeff * (xi[IND1] * C(IND2,IND0).z + xi[IND2] * C(IND1,IND0).z);

Referenced by NedelecElement::eval_curl_simplex().

#define DOF_LIN_1 ( DOF,
IND0,
IND1   ) 

Value:

coeff = (tet->get_edge_orientation(DOF) ? 1.0 : -1.0) * dof(DOF); \
  f.x += coeff * (xi[IND0] * J(0, IND1) - xi[IND1] * J(0, IND0)); \
  f.y += coeff * (xi[IND0] * J(1, IND1) - xi[IND1] * J(1, IND0)); \
  f.z += coeff * (xi[IND0] * J(2, IND1) - xi[IND1] * J(2, IND0));

Referenced by NedelecElement::eval_simplex().

#define DOF_LIN_2 ( DOF,
IND0,
IND1   ) 

Value:

coeff = dof(DOF); \
  f.x += coeff * (xi[IND0] * J(0, IND1) + xi[IND1] * J(0, IND0)); \
  f.y += coeff * (xi[IND0] * J(1, IND1) + xi[IND1] * J(1, IND0)); \
  f.z += coeff * (xi[IND0] * J(2, IND1) + xi[IND1] * J(2, IND0));

Referenced by NedelecElement::eval_simplex().

#define DOF_QUAD ( DOF,
IND0,
IND1,
IND2   ) 

Value:

coeff = dof(DOF); \
  f.x += coeff * J(0, IND0) * xi[IND1] * xi[IND2]; \
  f.y += coeff * J(1, IND0) * xi[IND1] * xi[IND2]; \
  f.z += coeff * J(2, IND0) * xi[IND1] * xi[IND2];

Referenced by NedelecElement::eval_simplex().


Generated on Fri Oct 26 13:35:14 2007 for FEMAXX (Finite Element Maxwell Eigensolver) by  doxygen 1.4.7