18#ifndef MIXED_EXACT_SOLUTION_H
19#define MIXED_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 scalar(Real x, Real y, Real z)
MixedExactSolution()=default
~MixedExactSolution()=default
Real forcing(Real x, Real y, Real z)
Real scalar(Real x, Real y)
Real forcing(Real x, Real y)
RealTensor grad(Real x, Real y, Real z)
Real div(Real x, Real y, Real z)
RealTensor grad(Real x, Real y)
RealGradient operator()(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