pyrokinetics.databases.imas

pyrokinetics.databases.imas#

Functions

get_eigenmode(kx, ky, nperiod, gk_output, ...)

Returns dictionary with the structure of the Wavevector->Eigenmode IDS for a given kx and ky :type kx: float :param kx: Radial wavenumber to examine :type kx: float :type ky: float :param ky: Bi-normal wavenumber to examine :type ky: float :type nperiod: int :param nperiod: Number of poloidal turns :type nperiod: int :type gk_output: GKOutput :param gk_output: Dataset of gk_output :type gk_output: xr.Dataset :type code_eigenmode: dict :param code_eigenmode: Dict of code inputs and status :type code_eigenmode: dict

get_linear_fields(gk_output)

Calculates "perturbed" quantities of field to be stored in the Wavevector->Eigenmode IDS :type gk_output: Dataset :param gk_output: Dataset containing fields for a given kx and ky :type gk_output: xr.Dataset

get_linear_moments(gk_output)

Gets moments needed for Wavevector->Eigenmode->Flux_moments :type gk_output: GKOutput :param gk_output: Dataset containing fields for a given kx and ky :type gk_output: xr.Dataset

get_linear_weights(gk_output)

Gets linear weights needed for Wavevector->Eigenmode->linear_weights :type gk_output: GKOutput :param gk_output: Dataset containing fields for a given kx and ky :type gk_output: xr.Dataset

get_nonlinear_fields(gk_output)

Retreives full 4D nonlinear fields(kx, ky, theta, time)

get_nonlinear_fluxes(gk_output, time_interval)

Loads nonlinear fluxes from pyrokinetics GKOutput

ids_to_pyro(ids_path[, file_format])

pyro_to_ids(pyro[, comment, time_interval, ...])

Return a Gyrokinetics IDS structure from idspy_toolkit GKDB/IMAS/OMAS gyrokinetics schema as described in:

pyro_to_imas_mapping(pyro[, comment, ...])

Return a dictionary mapping from pyro to ids data format