scotty.launch module
scotty.launch module#
- scotty.launch.find_entry_point(launch_position, poloidal_launch_angle, toroidal_launch_angle, poloidal_flux_enter, field, boundary_adjust=1e-08)#
Find the coordinates where the beam enters the plasma.
- Parameters
launch_position (numpy.ndarray[Any, numpy.dtype[numpy.float64]]) – Cartesian coordinates of the antenna (or cylindrical with zeta=0)
poloidal_launch_angle (float) – Poloidal angle of the antenna (radians), clockwise from the horizontal axis
toroidal_launch_angle (float) – Toroidal angle of the antenna (radians), anti-clockwise from the negative X-axis
field (scotty.geometry.MagneticField) – Object describing the magnetic field geometry
boundary_adjust (float) – Step size used to ensure entry point is _just_ inside plasma
poloidal_flux_enter (float) –
- Return type
Array with cylindrical coordinates of entry point
- scotty.launch.launch_beam(toroidal_launch_angle_Torbeam, poloidal_launch_angle_Torbeam, launch_beam_width, launch_beam_curvature, launch_position, launch_angular_frequency, mode_flag, field, hamiltonian, vacuumLaunch_flag=True, vacuum_propagation_flag=True, Psi_BC_flag=True, poloidal_flux_enter=1.0, delta_R=- 0.0001, delta_Z=0.0001, temperature=None)#
Propagate the beam from its initial position at the antenna to just inside the plasma.
- Parameters
toroidal_launch_angle_Torbeam (float) – Toroidal angle of antenna in TORBEAM convention
poloidal_launch_angle_Torbeam (float) – Poloidal angle of antenna in TORBEAM convention
launch_beam_width (float) – Width of the beam at launch
launch_beam_curvature (float) – Curvatuve of the beam at launch
launch_position (FloatArray) – Position of the antenna in cylindrical coordinates
launch_angular_frequency (float) – Angular frequency of the beam at launch
field (MagneticField) – Object describing the magnetic field of the plasma
vacuumLaunch_flag (bool) – If
True
, launch beam from vacuum, otherwise beam launch position is inside the plasma alreadyvacuum_propagation_flag (bool) – If
True
, run solver from the launch position, and don’t use analytical vacuum propagationPsi_BC_flag (String) – If
None
, do no special treatment at plasma-vacuum boundary Ifcontinuous
, apply BCs for continuous ne but discontinuous gradient of ne Ifdiscontinuous
, apply BCs for discontinuous nepoloidal_flux_enter (float) – Normalised poloidal flux label of plasma boundary
delta_R (float) – Finite difference spacing to use for
R
delta_Z (float) – Finite difference spacing to use for
Z
mode_flag (int) –
hamiltonian (scotty.hamiltonian.Hamiltonian) –
- Returns
K_initial (FloatArray) – Wavevector at plasma entry point
initial_position (FloatArray) – Coordinates of entry point
launch_K (FloatArray) – Wavevector at launch point
Psi_3D_lab_initial (FloatArray)
Psi_3D_lab_launch (FloatArray)
Psi_3D_lab_entry (FloatArray)
Psi_3D_lab_entry_cartersian (FloatArray)
distance_from_launch_to_entry (float)