18#ifndef DIV_GRAD_EXACT_SOLUTION_H
19#define DIV_GRAD_EXACT_SOLUTION_H
21#include "libmesh/libmesh_common.h"
22#include "libmesh/vector_value.h"
34 return cos(.5*
pi*x)*sin(.5*
pi*y);
39 return cos(.5*
pi*x)*sin(.5*
pi*y)*cos(.5*
pi*z);
44 const Real ux = .5*
pi*sin(.5*
pi*x)*sin(.5*
pi*y);
45 const Real uy = -.5*
pi*cos(.5*
pi*x)*cos(.5*
pi*y);
52 const Real ux = .5*
pi*sin(.5*
pi*x)*sin(.5*
pi*y)*cos(.5*
pi*z);
53 const Real uy = -.5*
pi*cos(.5*
pi*x)*cos(.5*
pi*y)*cos(.5*
pi*z);
54 const Real uz = .5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y)*sin(.5*
pi*z);
61 const Real dux_dx = .5*
pi*.5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y);
62 const Real dux_dy = .5*
pi*.5*
pi*sin(.5*
pi*x)*cos(.5*
pi*y);
63 const Real duy_dx = .5*
pi*.5*
pi*sin(.5*
pi*x)*cos(.5*
pi*y);
64 const Real duy_dy = .5*
pi*.5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y);
71 const Real dux_dx = .5*
pi*.5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y)*cos(.5*
pi*z);
72 const Real dux_dy = .5*
pi*.5*
pi*sin(.5*
pi*x)*cos(.5*
pi*y)*cos(.5*
pi*z);
73 const Real dux_dz = -.5*
pi*.5*
pi*sin(.5*
pi*x)*sin(.5*
pi*y)*sin(.5*
pi*z);
74 const Real duy_dx = .5*
pi*.5*
pi*sin(.5*
pi*x)*cos(.5*
pi*y)*cos(.5*
pi*z);
75 const Real duy_dy = .5*
pi*.5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y)*cos(.5*
pi*z);
76 const Real duy_dz = .5*
pi*.5*
pi*cos(.5*
pi*x)*cos(.5*
pi*y)*sin(.5*
pi*z);
77 const Real duz_dx = -.5*
pi*.5*
pi*sin(.5*
pi*x)*sin(.5*
pi*y)*sin(.5*
pi*z);
78 const Real duz_dy = .5*
pi*.5*
pi*cos(.5*
pi*x)*cos(.5*
pi*y)*sin(.5*
pi*z);
79 const Real duz_dz = .5*
pi*.5*
pi*cos(.5*
pi*x)*sin(.5*
pi*y)*cos(.5*
pi*z);
81 return RealTensor(dux_dx, dux_dy, dux_dz, duy_dx, duy_dy, duy_dz, duz_dx, duz_dy, duz_dz);
86 const Real dux_dx =
grad(x, y)(0, 0);
87 const Real duy_dy =
grad(x, y)(1, 1);
89 return dux_dx + duy_dy;
94 const Real dux_dx =
grad(x, y, z)(0, 0);
95 const Real duy_dy =
grad(x, y, z)(1, 1);
96 const Real duz_dz =
grad(x, y, z)(2, 2);
98 return dux_dx + duy_dy + duz_dz;
Real forcing(Real x, Real y, Real z)
DivGradExactSolution()=default
RealTensor grad(Real x, Real y)
Real forcing(Real x, Real y)
RealTensor grad(Real x, Real y, Real z)
Real scalar(Real x, Real y, Real z)
~DivGradExactSolution()=default
RealGradient operator()(Real x, Real y)
Real div(Real x, Real y, Real z)
Real scalar(Real x, Real y)
This class defines a tensor in LIBMESH_DIM dimensional Real or Complex space.
The libMesh namespace provides an interface to certain functionality in the library.
RealTensorValue RealTensor
RealVectorValue RealGradient
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real