# input.profiles¶

To see what a sample input.profiles looks like, at the command line type

```
$ gyro -g reg14 ; cat reg14/input.profiles
```

## Overview¶

The file input.profiles contains the entire dataset required for specification of experimental
profiles. All such profiles are specified on an N_EXP-point grid. The information
included is sufficient to use the Miller local equilibrium model. If general
flux-surface shape is required, the optional file `input.profiles.geo`

can be supplied
which overrides the model shape defined in input.profiles.

The format of each data-block in input.profiles is fixed, but between data blocks any number of
comment lines (starting with `#`

in the first column) can be added for convenience.
These comment lines are ignored by the parser. Unlike input.gyro, no inputs are supplied
by default; the program will halt and print an error message if data is missing. Below,
we list the individual scalar and vector data names (which correspond to the interface
names in the GYRO EXPRO library). In these definitions, recall that n_spec is the number
of species.

## What is BT_EXP?¶

BT_EXP (together with ARHO_EXP) is essentially an unneeded/unphysical parameter meant to confuse users. In reality, both these parameters could have – and should have – been omitted, and replaced with a profile of the (dimensional) toroidal or poloidal flux. The current standard for input.profiles does include the poloidal flux, but the original specification did not. Instead, these two unfortunate parameters were used as a proxy (together with the profile of the normalized root of the toroidal flux) for the dimensional toroidal flux. So, we emphasize again that insofar as GYRO, NEO, etc are concerned, BT_EXP and ARHO_EXP are essentially arbitrary.

Here is how they arose and what they mean: as an alternative to requiring input of the toroidal flux, one can introduce a (non-unique) function \(\rho\) which parameterizes the toroidal flux:

where \(\chi_t\) is the toroidal flux divided by \(2\pi\), and \(B_{\rm ref}\)
is any *reference field*. This is normally the vacuum toroidal field, or close to it.
However, it is important to keep in mind that the choice is ultimately arbitrary. What
is required is that by knowing \(B_{\rm ref}\) and \(\rho\) one can exactly
calculate \(\chi_t\). This parameterization corresponds to the following variables
in input.profiles:

And again we emphasize that a less confusing alternative would be to have simply included the vector of toroidal flux values in input.profiles. In future specifications, this is what we would like to do. One additional comment is that, in terms of \(\rho\) the area enclosed by a flux surface is approximately given by \(A \simeq \pi\rho^2\) so long as \(B_{\rm ref}\) is representative of the average field passing through the flux surface.

## File Structure¶

**Scalar Data**

`N_ION`

Total number of ions (thermal and fast).

`N_EXP`

Number of experimental data gridpoints.

This is the dimension of the vectors which follow, for example, “size(rho(:))” =

`N_EXP`

`BT_EXP`

Reference magnetic field, \(B_{\rm ref}\), in Tesla.

The sign is positive if the direction of \(\mathbf{B}\) is positively oriented; that is, if it points in the clockwise direction viewed from above.

In DIII-D, we typically have \(B_{\rm ref} > 0\), or equivalently,

`BTCCW`

= -1.

`ARHO_EXP`

\(\rho(a)\) (i.e., \(\rho\) at the separatrix) in units of \(\mathrm{m}\).

This will serve to denormalize the vector \(\hat\rho\) defined in the next section.

**Vector data, block 1 (1-5)**

**rho(:)**The dimensionless areal variable, \(\hat\rho = \rho(r)/\rho(a)\).

This should span the region \({\hat\rho} \in [0,1]\) using n_grid_exp values.

The grid-spacing can be nonuniform.

**rmin(:)**The generalized minor radius, \(r\), in units of \({\rm m}\). See here for definition.

**polflux(:)**Poloidal flux over \(2\pi\), in units of Webers/radian.

**q(:)**The dimensionless safety factor, \(q\).

**omega0(:)**Rotation frequency, \(\omega_0 = \displaystyle \frac{c E_r }{R B_p} = -c \frac{d \Phi}{d \psi}\) in units of \({\rm rad/s}\).

This is effectively a proxy for \(E_r\), but is more convenient since it is (nearly) a flux function.

**Vector data, block 2 (6-10)**

**rmaj(:)**The generalized major radius, \(R_0(r)\), in units of \({\rm m}\).

**zmag(:)**Flux-surface elevation, \(Z_0\), in units of \({\rm m}\).

**kappa(:)**The dimensionless plasma elongation, \(\kappa\).

**delta(:)**The dimensionless plasma triangularity, \(\delta\).

**zeta(:)**Plasma squareness, \(\zeta\).

**Vector data, block 3 (11-15)**

**ne(:)**The electron density, \(n_e\), in units of \(10^{19}/{\rm m}^3\).

**te(:)**The electron temperature, \(T_e\), in units of \({\rm keV}\).

**ptot(:)**Total plasma pressure, in units of Pascals.

**z_eff(:)**The (dimensionless) effective ion charge, \(Z_{\rm eff}\).

**null**

**Vector data, block 4 (16-20)**

**ni(1,:)**Ion density, \(n_{i1}\), in units of \(10^{19}/{\rm m}^3\).

**ni(2,:)**Ion density, \(n_{i2}\), in units of \(10^{19}/{\rm m}^3\).

**ni(3,:)**Ion density, \(n_{i3}\), in units of \(10^{19}/{\rm m}^3\).

**ni(4,:)**Ion density, \(n_{i4}\), in units of \(10^{19}/{\rm m}^3\).

**ni(5,:)**Ion density, \(n_{i5}\), in units of \(10^{19}/{\rm m}^3\).

**Vector data, block 5 (21-25)**

**ni(6,:)**Ion density, \(n_{i6}\), in units of \(10^{19}/{\rm m}^3\).

**ni(7,:)**Ion density, \(n_{i7}\), in units of \(10^{19}/{\rm m}^3\).

**ni(8,:)**Ion density, \(n_{i8}\), in units of \(10^{19}/{\rm m}^3\).

**ni(9,:)**Ion density, \(n_{i9}\), in units of \(10^{19}/{\rm m}^3\).

**ni(10,:)**Ion density, \(n_{i10}\), in units of \(10^{19}/{\rm m}^3\).

**Vector data, block 6 (26-30)**

**ti(1,:)**Ion temperature, \(T_{i1}\), in units of :math:{rm keV}`.

**ti(2,:)**Ion temperature, \(T_{i2}\), in units of :math:{rm keV}`.

**ti(3,:)**Ion temperature, \(T_{i3}\), in units of :math:{rm keV}`.

**ti(4,:)**Ion temperature, \(T_{i4}\), in units of :math:{rm keV}`.

**ti(5,:)**Ion temperature, \(T_{i5}\), in units of :math:{rm keV}`.

**Vector data, block 7 (31-35)**

**ti(6,:)**Ion temperature, \(T_{i6}\), in units of \({\rm keV}\).

**ti(7,:)**Ion temperature, \(T_{i7}\), in units of \({\rm keV}\).

**ti(8,:)**Ion temperature, \(T_{i8}\), in units of \({\rm keV}\).

**ti(9,:)**Ion temperature, \(T_{i9}\), in units of \({\rm keV}\).

**ti(10,:)**Ion temperature, \(T_{i10}\), in units of \({\rm keV}\).

**Vector data, block 8 (36-40)**

**vtor(1,:)**Ion toroidal velocity, \(v_{\phi,i1}\), in units of \({\rm m/s}\).

**vtor(2,:)**Ion toroidal velocity, \(v_{\phi,i2}\), in units of \({\rm m/s}\).

**vtor(3,:)**Ion toroidal velocity, \(v_{\phi,i3}\), in units of \({\rm m/s}\).

**vtor(4,:)**Ion toroidal velocity, \(v_{\phi,i4}\), in units of \({\rm m/s}\).

**vtor(5,:)**Ion toroidal velocity, \(v_{\phi,i5}\), in units of \({\rm m/s}\).

**Vector data, block 9 (41-55)**

**vtor(6,:)**Ion toroidal velocity, \(v_{\phi,i6}\), in units of \({\rm m/s}\).

**vtor(7,:)**Ion toroidal velocity, \(v_{\phi,i7}\), in units of \({\rm m/s}\).

**vtor(8,:)**Ion toroidal velocity, \(v_{\phi,i8}\), in units of \({\rm m/s}\).

**vtor(9,:)**Ion toroidal velocity, \(v_{\phi,i9}\), in units of \({\rm m/s}\).

**vtor(10,:)**Ion toroidal velocity, \(v_{\phi,i10}\), in units of \({\rm m/s}\).

**Vector data, block 10 (56-60)**

**vpol(1,:)**Ion poloidal velocity, \(v_{\theta,i1}\), in units of \({\rm m/s}\).

**vpol(2,:)**Ion poloidal velocity, \(v_{\theta,i2}\), in units of \({\rm m/s}\).

**vpol(3,:)**Ion poloidal velocity, \(v_{\theta,i3}\), in units of \({\rm m/s}\).

**vpol(4,:)**Ion poloidal velocity, \(v_{\theta,i4}\), in units of \({\rm m/s}\).

**vpol(5,:)**Ion toroidal velocity, \(v_{\theta,i5}\), in units of \({\rm m/s}\).

**Vector data, block 11 (61-65)**

**vpol(6,:)**Ion poloidal velocity, \(v_{\theta,i6}\), in units of \({\rm m/s}\).

**vpol(7,:)**Ion poloidal velocity, \(v_{\theta,i7}\), in units of \({\rm m/s}\).

**vpol(8,:)**Ion poloidal velocity, \(v_{\theta,i8}\), in units of \({\rm m/s}\).

**vpol(9,:)**Ion poloidal velocity, \(v_{\theta,i9}\), in units of \({\rm m/s}\).

**vpol(10,:)**Ion toroidal velocity, \(v_{\theta,i10}\), in units of \({\rm m/s}\).

**Vector data, block 12 (66-70)**

**flow_beam(:)**The total integrated beam flow (particle source), in units of \({\rm MW/keV} = 0.624 \times 10^{22} \, {\rm s}^{-1}\).

flow_wall(:)

Wall source in same units as above (generally this is poorly-known and ignored in TGYRO).

flow_mom(:)

The total (convected and conducted) integrated angular momentum flow (torque), in units of \({\rm N}\cdot{\rm m}\).

The TRANSP variable is VOLINT(MVISC+MCOND).

**null****null**

**Vector data, block 13 (71-75)**

**pow_e(:)**The total (convected and conducted) integrated electron power, in units of \({\rm MW}\).

This is the electron heating power, corrected for the ion-electron energy transfer, the radiated power, and the rate of change of the energy stored by the electrons. - The TRANSP variable is VOLINT(PCONV+PCOND) \(\times 10^{-6}\).

**pow_i(:)**The total (convected and conducted) integrated ion power, in units of \({\rm MW}\).

This is the ion heating power, corrected for the ion-electron energy transfer, the net charge-exchange loss power, and the rate of change of the energy stored by the ions.

The TRANSP variable is VOLINT(PCNVE+PCNDE) \(\times 10^{-6}\).

**pow_ei(:)**The integrated electron-ion energy exchange power, in units of \({\rm MW}\).

The TRANSP variable is VOLINT(QIE) \(\times 10^{-6}\).

**pow_e_aux(:)**The integrated auxiliary power to electrons, in units of \({\rm MW}\).

**pow_i_aux(:)**The integrated auxiliary power to ions, in units of \({\rm MW}\).

**Vector data, block 13 (71-75) [DIAGNOSTIC – optional]**

**pow_e_fus(:)**Fusion power to electrons, in units of \({\rm MW}\).

**pow_i_fus(:)**Fusion power to ions, in units of \({\rm MW}\).

**pow_e_sync(:)**Electron synchrotron radiation, in units of \({\rm MW}\).

**pow_e_brem(:)**Bremsstrahlung radiation, in units of \({\rm MW}\).

**pow_e_line(:)**Electron line radiation, in units of \({\rm MW}\).

**Vector data, block 14 (76-80) [DIAGNOSTIC – optional]**

**sbeame(:)**\(1/m^3/s\).

**sbcx(:)**\(1/m^3/s\).

**sscxl(:)**\(1/m^3/s\).

**null****null**