libMesh
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
libMesh::PSoln Class Reference

#include <exact_soln.h>

Inheritance diagram for libMesh::PSoln:
[legend]

Public Member Functions

 PSoln (const bool cavity_in)
 
Real operator() (const Point &p) const override
 
Real forcing (const Point &p) const override
 

Private Attributes

const bool cavity
 

Detailed Description

Definition at line 133 of file exact_soln.h.

Constructor & Destructor Documentation

◆ PSoln()

libMesh::PSoln::PSoln ( const bool  cavity_in)
inline

Definition at line 136 of file exact_soln.h.

136: cavity(cavity_in) {}
const bool cavity
Definition exact_soln.h:161

Member Function Documentation

◆ forcing()

Real libMesh::PSoln::forcing ( const Point p) const
inlineoverridevirtual

Implements libMesh::ExactSoln.

Definition at line 148 of file exact_soln.h.

149 {
150 const auto x = p(0);
151 const auto y = p(1);
152 if (cavity)
153 return -1. / 2 * pi * sin(x) * sin((1. / 2) * y * pi) -
154 1. / 2 * pi * sin(y) * sin((1. / 2) * x * pi);
155 else
156 return -1. / 2 * pi * sin((1. / 4) * x * pi) * sin((1. / 2) * y * pi) -
157 1. / 2 * pi * sin((1. / 2) * x * pi) * sin((1. / 2) * y * pi);
158 }
const Real pi
.
Definition libmesh.h:292

References cavity, and libMesh::pi.

Referenced by libMesh::HDGProblem::pressure_volume_residual().

◆ operator()()

Real libMesh::PSoln::operator() ( const Point p) const
inlineoverridevirtual

Implements libMesh::ExactSoln.

Definition at line 138 of file exact_soln.h.

139 {
140 const auto x = p(0);
141 const auto y = p(1);
142 if (cavity)
143 return sin(x) * sin(y);
144 else
145 return sin((3. / 2) * y * pi) * cos((1. / 4) * x * pi);
146 }

References cavity, and libMesh::pi.

Member Data Documentation

◆ cavity

const bool libMesh::PSoln::cavity
private

Definition at line 161 of file exact_soln.h.

Referenced by forcing(), and operator()().


The documentation for this class was generated from the following file: