https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
Moose::MFEM::MeridionalCurlVectorCoefficient Class Reference

Class to compute the meridional curl associated with an azimuthal scalar field A_theta. More...

#include <MFEMMeridionalCurlAux.h>

Inheritance diagram for Moose::MFEM::MeridionalCurlVectorCoefficient:
[legend]

Public Member Functions

 MeridionalCurlVectorCoefficient (mfem::Coefficient &a_theta, mfem::VectorCoefficient &grad_a_theta)
 
void Eval (mfem::Vector &V, mfem::ElementTransformation &T, const mfem::IntegrationPoint &ip) override
 

Private Attributes

mfem::Coefficient & _a_theta
 
mfem::VectorCoefficient & _grad_a_theta
 

Detailed Description

Class to compute the meridional curl associated with an azimuthal scalar field A_theta.

For a 2D meridional mesh with coordinates

x = r y = z

this computes

B_r = -dA_theta/dz B_z = dA_theta/dr + A_theta/r

Definition at line 31 of file MFEMMeridionalCurlAux.h.

Constructor & Destructor Documentation

◆ MeridionalCurlVectorCoefficient()

Moose::MFEM::MeridionalCurlVectorCoefficient::MeridionalCurlVectorCoefficient ( mfem::Coefficient &  a_theta,
mfem::VectorCoefficient &  grad_a_theta 
)

Definition at line 19 of file MFEMMeridionalCurlAux.C.

21 : mfem::VectorCoefficient(2), _a_theta(a_theta), _grad_a_theta(grad_a_theta)
22{
23}

Member Function Documentation

◆ Eval()

void Moose::MFEM::MeridionalCurlVectorCoefficient::Eval ( mfem::Vector &  V,
mfem::ElementTransformation &  T,
const mfem::IntegrationPoint &  ip 
)
override

Definition at line 26 of file MFEMMeridionalCurlAux.C.

29{
30 mfem::Vector A_grad;
31 _grad_a_theta.Eval(A_grad, T, ip);
32
33 mfem::Vector physical_point;
34 T.Transform(ip, physical_point);
35
36 const mfem::real_t r = physical_point[0];
37 const mfem::real_t A = _a_theta.Eval(T, ip);
38
39 const mfem::real_t dA_dr = A_grad[0];
40 const mfem::real_t dA_dz = A_grad[1];
41
42 V.SetSize(2);
43 V[0] = -dA_dz;
44 V[1] = dA_dr + A / r;
45}

Member Data Documentation

◆ _a_theta

mfem::Coefficient& Moose::MFEM::MeridionalCurlVectorCoefficient::_a_theta
private

Definition at line 44 of file MFEMMeridionalCurlAux.h.

Referenced by Eval().

◆ _grad_a_theta

mfem::VectorCoefficient& Moose::MFEM::MeridionalCurlVectorCoefficient::_grad_a_theta
private

Definition at line 45 of file MFEMMeridionalCurlAux.h.

Referenced by Eval().


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