|
The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
|
Marklin force-free equilibrium solver class.
Public Member Functions | |
| __del__ (self) | |
| __init__ (self, OFT_env) | |
| Initialize Marklin object. | |
| build_XDMF (self, repeat_static=False, pretty=False) | |
| Build XDMF plot metadata files for model. | |
| compute_eig (self, nmodes=1, cache_file=None, save_rst=False) | |
| Compute force-free eigenmodes. | |
| compute_par_diff (self, interpolator, k_perp) | |
| Compute parallel diffusion with specified vector field and diffusivity. | |
| compute_vac (self, nh, hcpc, hcpv, cache_file=None) | |
| Compute vacuum field with specified fluxes through jump planes. | |
| get_ainterp (self, hmode_facs, bn_gauge=False) | |
| Create field interpolator for vector potential. | |
| get_binterp (self, hmode_facs=None, vac_facs=None) | |
| Create field interpolator for magnetic field. | |
| save_field (self, field, tag) | |
| Save field to XDMF files for VisIt/Paraview. | |
| setup (self, order=2, minlev=-1) | |
| Needs docs. | |
| setup_io (self, basepath=None, legacy_hdf5=False) | |
| Setup XDMF+HDF5 I/O for 3D visualization. | |
| setup_mesh (self, r=None, lc=None, reg=None, mesh_file=None, grid_order=1) | |
| Setup mesh for Marklin force-free equilibrium calculations. | |
Public Attributes | |
| eig_vals | |
| Eigenvalues. | |
| hcpc | |
| Needs docs. | |
| hcpv | |
| Needs docs. | |
| lc | |
| Mesh triangles [nc,3]. | |
| nc | |
| Number of cells in mesh. | |
| nh | |
| Needs docs. | |
| nm | |
| Number of modes. | |
| np | |
| Number of points in mesh. | |
| nregs | |
| Number of regions in mesh. | |
| r | |
| Mesh vertices [np,3] (last column should be all zeros) | |
| reg | |
| Mesh regions [nc]. | |
Protected Attributes | |
| _io_basepath | |
| I/O basepath for plotting/XDMF output. | |
| _marklin_ptr | |
| Internal Marklin solver object. | |
| _mesh_ptr | |
| Internal mesh object. | |
| _oft_env | |
| __init__ | ( | self, | |
| OFT_env | |||
| ) |
Initialize Marklin object.
| OFT_env | OFT runtime environment object (See OFT_env) |
| __del__ | ( | self | ) |
| build_XDMF | ( | self, | |
repeat_static = False, |
|||
pretty = False |
|||
| ) |
Build XDMF plot metadata files for model.
| repeat_static | Repeat static fields (0-th timestep) in all timesteps? |
| pretty | Use pretty printing (indentation) in XDMF files? |
| compute_eig | ( | self, | |
nmodes = 1, |
|||
cache_file = None, |
|||
save_rst = False |
|||
| ) |
Compute force-free eigenmodes.
| nmodes | Number of eigenmodes to compute |
| cache_file | Path to cache file to store/load modes |
| save_rst | Save restart files? (deprecated) |
| compute_par_diff | ( | self, | |
| interpolator, | |||
| k_perp | |||
| ) |
Compute parallel diffusion with specified vector field and diffusivity.
| interpolator | Interpolator defining vector field |
| k_perp | Perpendicular diffusion value (k_par = 1.0) |
| compute_vac | ( | self, | |
| nh, | |||
| hcpc, | |||
| hcpv, | |||
cache_file = None |
|||
| ) |
Compute vacuum field with specified fluxes through jump planes.
| nh | Number of jump planes |
| hcpc | Plane specification points |
| hcpv | Plane specification vectors |
| cache_file | Path to cache file to store/load modes |
| get_ainterp | ( | self, | |
| hmode_facs, | |||
bn_gauge = False |
|||
| ) |
Create field interpolator for vector potential.
| imode | Index of eigenstate |
| bn_gauge | Use B-field gauge (A_t = 0 @ wall)? |
| get_binterp | ( | self, | |
hmode_facs = None, |
|||
vac_facs = None |
|||
| ) |
Create field interpolator for magnetic field.
| imode | Index of eigenstate |
| save_field | ( | self, | |
| field, | |||
| tag | |||
| ) |
Save field to XDMF files for VisIt/Paraview.
| field | Field interpolation object |
| tag | Name for field in XDMF files |
| setup | ( | self, | |
order = 2, |
|||
minlev = -1 |
|||
| ) |
Needs docs.
| setup_io | ( | self, | |
basepath = None, |
|||
legacy_hdf5 = False |
|||
| ) |
Setup XDMF+HDF5 I/O for 3D visualization.
| basepath | Path to root directory to use for I/O |
| legacy_hdf5 | Use legacy HDF5 format (required for VisIt) |
| setup_mesh | ( | self, | |
r = None, |
|||
lc = None, |
|||
reg = None, |
|||
mesh_file = None, |
|||
grid_order = 1 |
|||
| ) |
Setup mesh for Marklin force-free equilibrium calculations.
A mesh should be specified by passing "r", "lc", and optionally "reg" or using a "mesh_file".
| r | Mesh point list [np,3] |
| lc | Mesh cell list [nc,4] (base one) |
| reg | Mesh region list [nc] (base one) |
| mesh_file | Filename containing mesh to load (native format only) |
|
protected |
I/O basepath for plotting/XDMF output.
|
protected |
Internal Marklin solver object.
|
protected |
Internal mesh object.
|
protected |
| eig_vals |
Eigenvalues.
| hcpc |
Needs docs.
| hcpv |
Needs docs.
| lc |
Mesh triangles [nc,3].
| nc |
Number of cells in mesh.
| nh |
Needs docs.
| nm |
Number of modes.
| np |
Number of points in mesh.
| nregs |
Number of regions in mesh.
| r |
Mesh vertices [np,3] (last column should be all zeros)
| reg |
Mesh regions [nc].