Helper class to integrate over an elliptic domain.  
 More...
#include <dumux/multidomain/embedded/cylinderintegration.hh>
template<class Scalar>
class Dumux::EmbeddedCoupling::EllipseIntegration< Scalar >
- Note
- This is mostly useful if the integral is known and the integral mass has to be locally distributed to some non-matching domain 
- 
The algorithm is based on evenly spaced area elements with rejection sampling. To improve the quality of the integral, increase the sample size. 
- 
The area integral of a constant function is exact See Koch et al. (2020) https://doi.org/10.1016/j.jcp.2020.109369 
|  | 
|  | EllipseIntegration (const Scalar relCharLength) | 
|  | Constructor. 
 | 
|  | 
| void | setGeometry (const GlobalPosition ¢er, const GlobalPosition &firstAxis, const GlobalPosition &secondAxis, int verbosity=0) | 
|  | set geometry of an ellipse 
 | 
|  | 
| Scalar | integrationElement (std::size_t i) const | 
|  | obtain ith integration element 
 | 
|  | 
| const GlobalPosition & | integrationPoint (std::size_t i) const | 
|  | obtain ith integration point 
 | 
|  | 
| std::size_t | size () const | 
|  | number of integration points 
 | 
|  | 
◆ EllipseIntegration()
- Parameters
- 
  
    | relCharLength | characteristic relative integration length (real number between 0 and 1) |  
 
- Note
- half the characteristic length means 2*2=4 times more integration points 
 
 
◆ integrationElement()
◆ integrationPoint()
◆ setGeometry()
- Parameters
- 
  
    | center | the center position |  | firstAxis | first ellipse axis (length corresponding to axis length) |  | secondAxis | second ellipse axis (length corresponding to axis length) |  | verbosity | the verbosity level (default: 0 -> no terminal output) |  
 
 
 
◆ size()
The documentation for this class was generated from the following file: