Graph Framework
Loading...
Searching...
No Matches
equilibrium.hpp File Reference

Class signature to impliment plasma equilibrium. More...

#include <mutex>
#include <netcdf.h>
#include "vector.hpp"
#include "trigonometry.hpp"
#include "piecewise.hpp"
#include "math.hpp"
#include "arithmetic.hpp"
#include "newton.hpp"

Go to the source code of this file.

Classes

class  equilibrium::generic< T, SAFE_MATH >
 Class representing a generic equilibrium. More...
 
class  equilibrium::no_magnetic_field< T, SAFE_MATH >
 Uniform density with no magnetic field equilibrium. More...
 
class  equilibrium::slab< T, SAFE_MATH >
 Uniform density with varying magnetic field equilibrium. More...
 
class  equilibrium::slab_density< T, SAFE_MATH >
 Vary density with uniform magnetic field equilibrium. More...
 
class  equilibrium::slab_field< T, SAFE_MATH >
 Vary density with uniform magnetic field equilibrium. More...
 
class  equilibrium::guassian_density< T, SAFE_MATH >
 Guassian density with uniform magnetic field equilibrium. More...
 
class  equilibrium::efit< T, SAFE_MATH >
 2D EFIT equilibrium. More...
 
class  equilibrium::vmec< T, SAFE_MATH >
 3D VMEC equilibrium. More...
 

Namespaces

namespace  equilibrium
 Name space for equilibrium models.
 

Typedefs

template<jit::float_scalar T, bool SAFE_MATH = false>
using equilibrium::shared = std::shared_ptr< generic< T, SAFE_MATH > >
 Convenience type alias for shared equilibria.
 

Functions

template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_no_magnetic_field ()
 Convenience function to build a no magnetic field equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_slab ()
 Convenience function to build a slab equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_slab_density ()
 Convenience function to build a slab density equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_slab_field ()
 Convenience function to build a slab density equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_guassian_density ()
 Convenience function to build a guassian density equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
graph::shared_leaf< T, SAFE_MATH > equilibrium::build_1D_spline (graph::output_nodes< T, SAFE_MATH > c, graph::shared_leaf< T, SAFE_MATH > x, const T scale, const T offset)
 Build a 1D spline.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_efit (const std::string &spline_file)
 Convenience function to build an EFIT equilibrium.
 
template<jit::float_scalar T, bool SAFE_MATH = false>
shared< T, SAFE_MATH > equilibrium::make_vmec (const std::string &spline_file)
 Convenience function to build an VMEC equilibrium.
 

Detailed Description

Class signature to impliment plasma equilibrium.

Defined the interfaces to access plasma equilibrium.