Equilibrium analysis tools #675
Labels
equilibria
Tasks relating to the equilibria module
geometry
Tasks relating to the geometry module
quality
Tasks relating to quality issues or improvements
Milestone
Description of issue / requirement to address
This is a general issue to gather requirements for a set of functionality relating to equilibrium queries. Once we have a fairly complete list of required functionality, we can then discuss implementation and do the work.
At present a wide range of different tools are available in the
equilibria
module and in the BLUEPRINTStreamFlow
object. The latter has some functionality which is not present in the new module, but is set to be deprecated.Proposed solution
In my head, there are three generic categories of request for information on an
Equilibrium
object:Implement functionality for the following equilibrium queries:
At present, these bits of functionality are strewn about between
equilibria/physics.py
,equilibria/find.py
, andequilbria/flux_surfaces.py
. I propose to compile a list of desired functionality, restructure these tools in a clearer way, and implement any missing features.Desired functionality
equilibria
find_OX_points
,eq.get_OX_points()
find_LCFS_separatrix
,eq.get_LCFS()
find_LCFS_separatrix
,eq.get_separatrix()
get_legs
find_flux_surface_through_point
find_flux_surf
,eq.get_flux_surface()
eq.Bx()
eq.Bz()
eq.Bp()
eq.Bt()
calc_Li
calc_li
,calc_li3
calc_volume
calc_energy
calc_betap
,calc_beta_p
,beta_p
[facepalm]eq.q()
,ClosedFluxSurface.safety_factor()
calculate_connection_length_flt
,calculate_connection_length_fs
,ClosedFluxSurface.connection_length()
ClosedFluxSurface.kappa[upper, lower]
ClosedFluxSurface.delta[upper, lower]
ClosedFluxSurface.zeta[upper, lower]
TO BE UPDATED as part of this issue
Alternative solutions
We could carry on as is and add in pieces of functionality piecemeal, but we're already struggling with organisation and duplication of little helper functions and the like.
Additional context
Quite a few people probably want to have a say in terms of what is required, so @hsaunders1904 @markj997 @DarioV86 @je-cook @alexanderianblair @DanShort12 , please feel free to comment on this issue.
The text was updated successfully, but these errors were encountered: