|
The Open FUSION Toolkit 1.0.0-beta5
Modeling tools for plasma and fusion research and engineering
|
Marklin force-free equilibrium solver class.
Public Member Functions | |
| __init__ (self, debug_level=0, nthreads=2, grid_order=1) | |
| Initialize Marklin object. | |
| build_XDMF (self, repeat_static=False, pretty=False) | |
| Build XDMF plot metadata files for model. | |
| compute (self, nmodes=1, order=2, minlev=-1, save_rst=True) | |
| Compute force-free eigenmodes. | |
| get_ainterp (self, imode, bn_gauge=False) | |
| Create field interpolator for vector potential. | |
| get_binterp (self, imode) | |
| Create field interpolator for magnetic field. | |
| save_field (self, field, tag) | |
| Save field to XDMF files for VisIt/Paraview. | |
| setup_io (self, basepath=None) | |
| Setup XDMF+HDF5 I/O for 3D visualization. | |
| setup_mesh (self, r=None, lc=None, reg=None, mesh_file=None) | |
| Setup mesh for Marklin force-free equilibrium calculations. | |
Public Attributes | |
| eig_vals | |
| Eigenvalues. | |
| lc | |
| Mesh triangles [nc,3]. | |
| nc | |
| Number of cells in mesh. | |
| 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 Member Functions | |
| _update_psin (self) | |
Update input file (oftpyin) with current settings. | |
Protected Attributes | |
| _io_basepath | |
| I/O basepath for plotting/XDMF output. | |
| _nm | |
| Number of modes. | |
| _psin_dict | |
| Input file settings. | |
| __init__ | ( | self, | |
debug_level = 0, |
|||
nthreads = 2, |
|||
grid_order = 1 |
|||
| ) |
Initialize Marklin object.
| debug_level | Level of debug printing (0-3) |
|
protected |
Update input file (oftpyin) with current settings.
| 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 | ( | self, | |
nmodes = 1, |
|||
order = 2, |
|||
minlev = -1, |
|||
save_rst = True |
|||
| ) |
Compute force-free eigenmodes.
| nmodes | Number of eigenmodes to compute |
| order | Order of FE representation |
| minlev | Minimum level for multigrid solve |
| save_rst | Save restart files? |
| get_ainterp | ( | self, | |
| imode, | |||
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, | |
| imode | |||
| ) |
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_io | ( | self, | |
basepath = None |
|||
| ) |
Setup XDMF+HDF5 I/O for 3D visualization.
| basepath | Path to root directory to use for I/O |
| setup_mesh | ( | self, | |
r = None, |
|||
lc = None, |
|||
reg = None, |
|||
mesh_file = None |
|||
| ) |
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 |
Number of modes.
|
protected |
Input file settings.
| eig_vals |
Eigenvalues.
| lc |
Mesh triangles [nc,3].
| nc |
Number of cells in mesh.
| 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].