The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
oft_taylor_ifield Type Reference

Detailed Description

Force-free, uniform \( \lambda \) field object (inhomogeneous BCs)

Used to compute/store fields of the form [$ J_p = \lambda (B_p + B_v), ]$ where \( B_v \) is a vacuum field and \( B_p \) is the plasma response to make the full field force-free for the given value of \( \lambda \).

Public Member Functions

procedure delete (self, storage_only)
 Setup object before solution.
 
procedure setup (self, nh, hcpc, hcpv, htags, ml_hcurl, ml_h1, ml_hcurl_grad, ml_h1grad, ml_lagrange, minlev)
 Setup object before solution.
 

Public Attributes

type(oft_vector_ptr), dimension(:), pointer gffa => NULL()
 Vector potential for plasma fields at specified \( \lambda \).
 
real(r8), dimension(:,:), pointer hcpc => NULL()
 Center points of handles (jump planes)
 
real(r8), dimension(:,:), pointer hcpv => NULL()
 Normal vectors for handles (jump planes)
 
type(oft_vector_ptr), dimension(:), pointer hcur => NULL()
 Inhomogeneous source fields.
 
character(len=taylor_tag_size), dimension(:), pointer htag => NULL()
 Handle names.
 
type(oft_vector_ptr), dimension(:), pointer hvac => NULL()
 Vacuum magnetic fields.
 
real(r8jtol = 1.d-6
 Tolerance for identifying edges on jump plane.
 
real(r8lambda = 0.d0
 Lambda value for solutions in gffa
 
integer(i4minlev = -1
 Lowest FE level for MG solvers (-1 indicates single level solve)
 
type(oft_ml_fem_type), pointer ml_h1 => NULL()
 Multi-level H^1 FE object.
 
type(oft_ml_fem_type), pointer ml_h1grad => NULL()
 Multi-level grad(H^1) FE object.
 
type(oft_ml_fem_type), pointer ml_hcurl => NULL()
 Multi-level H(Curl) FE object.
 
type(oft_ml_fem_comp_type), pointer ml_hcurl_grad => NULL()
 Multi-level H(Curl) + grad(H^1) FE object.
 
type(oft_ml_fem_type), pointer ml_lagrange => NULL()
 Multi-level Lagrange FE object.
 
integer(i4nh = -1
 Number of handles (jump planes) in current geometry.
 

Member Function/Subroutine Documentation

◆ delete()

procedure delete ( class(oft_taylor_ifield), intent(inout)  self,
logical, intent(in), optional  storage_only 
)

Setup object before solution.

Parameters
[in,out]selfForce-free eigenmode object
[in]storage_onlyOnly reset storage, but do not clear references

◆ setup()

procedure setup ( class(oft_taylor_ifield), intent(inout)  self,
integer(i4), intent(in)  nh,
real(r8), dimension(3,nh), intent(in)  hcpc,
real(r8), dimension(3,nh), intent(in)  hcpv,
character(len=taylor_tag_size), dimension(nh), intent(in), optional  htags,
type(oft_ml_fem_type), intent(in), optional, target  ml_hcurl,
type(oft_ml_fem_type), intent(in), optional, target  ml_h1,
type(oft_ml_fem_comp_type), intent(in), optional, target  ml_hcurl_grad,
type(oft_ml_fem_type), intent(in), optional, target  ml_h1grad,
type(oft_ml_fem_type), intent(in), optional, target  ml_lagrange,
integer(i4), intent(in), optional  minlev 
)

Setup object before solution.

Parameters
[in,out]selfForce-free field object
[in]nhNumber of jump planes
[in]hcpcJump plane center possitions [3,nh]
[in]hcpvJump plane normal vectors [3,nh]
[in]htagsNames for each jump plane [LEN=taylor_tag_size,nh] (optional)
[in]ml_hcurlMulti-level H(Curl) FE representation
[in]ml_h1Multi-level H^1 FE representation
[in]ml_hcurl_gradMulti-level H(Curl) + grad(H^1) FE representation
[in]ml_h1gradMulti-level grad(H^1) FE representation
[in]ml_lagrangeMulti-level Lagrange FE representation

Member Data Documentation

◆ gffa

type(oft_vector_ptr), dimension(:), pointer gffa => NULL()

Vector potential for plasma fields at specified \( \lambda \).

◆ hcpc

real(r8), dimension(:,:), pointer hcpc => NULL()

Center points of handles (jump planes)

◆ hcpv

real(r8), dimension(:,:), pointer hcpv => NULL()

Normal vectors for handles (jump planes)

◆ hcur

type(oft_vector_ptr), dimension(:), pointer hcur => NULL()

Inhomogeneous source fields.

◆ htag

character(len=taylor_tag_size), dimension(:), pointer htag => NULL()

Handle names.

◆ hvac

type(oft_vector_ptr), dimension(:), pointer hvac => NULL()

Vacuum magnetic fields.

◆ jtol

real(r8) jtol = 1.d-6

Tolerance for identifying edges on jump plane.

◆ lambda

real(r8) lambda = 0.d0

Lambda value for solutions in gffa

◆ minlev

integer(i4) minlev = -1

Lowest FE level for MG solvers (-1 indicates single level solve)

◆ ml_h1

type(oft_ml_fem_type), pointer ml_h1 => NULL()

Multi-level H^1 FE object.

◆ ml_h1grad

type(oft_ml_fem_type), pointer ml_h1grad => NULL()

Multi-level grad(H^1) FE object.

◆ ml_hcurl

type(oft_ml_fem_type), pointer ml_hcurl => NULL()

Multi-level H(Curl) FE object.

◆ ml_hcurl_grad

type(oft_ml_fem_comp_type), pointer ml_hcurl_grad => NULL()

Multi-level H(Curl) + grad(H^1) FE object.

◆ ml_lagrange

type(oft_ml_fem_type), pointer ml_lagrange => NULL()

Multi-level Lagrange FE object.

◆ nh

integer(i4) nh = -1

Number of handles (jump planes) in current geometry.


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