Operator to evaluate Dirichlet boundary conditions using DG.
More...
#include <tutorials/scl-11/src/PoissonDiscontinousGalerkin.hpp>
Operator to evaluate Dirichlet boundary conditions using DG.
- Examples
- poisson_2d_dis_galerkin.cpp.
Definition at line 274 of file PoissonDiscontinousGalerkin.hpp.
◆ OpL2BoundaryRhs()
Poisson2DiscontGalerkinOperators::OpL2BoundaryRhs::OpL2BoundaryRhs |
( |
boost::shared_ptr< FaceSideEle > |
side_fe_ptr, |
|
|
ScalarFun |
fun |
|
) |
| |
|
inline |
◆ doWork()
MoFEMErrorCode Poisson2DiscontGalerkinOperators::OpL2BoundaryRhs::doWork |
( |
int |
side, |
|
|
EntityType |
type, |
|
|
EntData & |
data |
|
) |
| |
|
inline |
- Examples
- PoissonDiscontinousGalerkin.hpp.
Definition at line 280 of file PoissonDiscontinousGalerkin.hpp.
285 const auto in_the_loop =
289 const double s = getMeasure() / (
areaMap[0]);
293 auto t_normal = getFTensor1Normal();
294 t_normal.normalize();
296 auto t_w = getFTensor0IntegrationWeight();
304 rhsF.resize(nb_rows,
false);
307 const size_t nb_integration_pts = getGaussPts().size2();
313 auto t_coords = getFTensor1CoordsAtGaussPts();
316 const double beta =
static_cast<double>(
nitsche) / (in_the_loop + 1);
318 for (
size_t gg = 0; gg != nb_integration_pts; ++gg) {
319 const double alpha = getMeasure() * t_w;
321 const double source_val =
322 -p *
sourceFun(t_coords(0), t_coords(1), t_coords(2));
324 auto t_f =
rhsF.data().begin();
327 for (; rr != nb_rows; ++rr) {
330 t_vn_plus(
i) = beta * (
phi * t_diff_row_base(
i) / p);
332 t_vn(
i) = t_row_base * t_normal(
i) * sense_row - t_vn_plus(
i);
335 *t_f -= alpha * t_vn(
i) * (source_val * t_normal(
i));
342 for (; rr < nb_row_base_functions; ++rr) {
◆ rhsF
VectorDouble Poisson2DiscontGalerkinOperators::OpL2BoundaryRhs::rhsF |
|
private |
◆ sideFEPtr
boost::shared_ptr<FaceSideEle> Poisson2DiscontGalerkinOperators::OpL2BoundaryRhs::sideFEPtr |
|
private |
◆ sourceFun
ScalarFun Poisson2DiscontGalerkinOperators::OpL2BoundaryRhs::sourceFun |
|
private |
The documentation for this struct was generated from the following file: