-
Notifications
You must be signed in to change notification settings - Fork 2
/
nbi.html
181 lines (161 loc) · 17.4 KB
/
nbi.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<html>
<head>
<title>The nbi IDS</title>
</head>
<body>
<code>[The info on this page was extracted from IMAS source code (access-layer/fortraninterface/nbi_put.f90, git master 08/29/2016)]</code>
<p>
The nbi IDS is a container object that has a single data object, a double(:) with all the timeslice values for scalar data.
The nbi IDS also holds three container objects with data, or meta data, or other containers: ids_properties, code and unit, respectively.
unit has containers species, power, energy, beam_current_fraction, beam_power_fraction and beamlets_group, which holds the following containers:
position, focus, divergence_component and beamlets. The beamlets container has a container positions.
The nbi IDS has a total of 14 container objects with 119 data (or meta data) objects.
<p>
Below is a table with all the nbi data and meta-data objects and their types:
<p>
<table border="1">
<tr><th align="left">data container</th><th>data type</th><th>used by<br>TRANSP?</th></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%time(nsctime)</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%ids_properties%comment</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%ids_properties%homogeneous_time</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%code%name</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%code%version</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%code%parameters</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%code%output_flag</td><td>int(:)</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%name</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%identifier</td><td>string</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%label</td><td>string</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%a</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%a_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%a_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%a_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%z_n</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%z_n_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%z_n_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%species%z_n_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%power%time</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%power%data</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%power%data_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%power%data_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%power%data_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%energy%time</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%energy%data</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%energy%data_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%energy%data_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%energy%data_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_current_fraction%time</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_current_fraction%data</td><td>double(:,:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_current_fraction%data_error_upper</td><td>double(:,:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_current_fraction%data_error_lower</td><td>double(:,:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_current_fraction%data_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_power_fraction%time</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_power_fraction%data</td><td>double(:,:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_power_fraction%data_error_upper</td><td>double(:,:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_power_fraction%data_error_lower</td><td>double(:,:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beam_power_fraction%data_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%tangency_radius</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%tangency_radius_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%tangency_radius_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%tangency_radius_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%angle</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%angle_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%angle_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%angle_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%direction</td><td>int</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_horizontal</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_horizontal_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_horizontal_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_horizontal_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_vertical</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_vertical_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_vertical_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%width_vertical_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%r</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%r_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%r_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%r_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%z</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%z_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%z_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%z_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%phi</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%phi_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%phi_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%position%phi_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_horizontal</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_horizontal_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_horizontal_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_horizontal_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_vertical</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_vertical_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_vertical_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%focal_length_vertical_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_horizontal</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_horizontal_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_horizontal_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_horizontal_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_vertical</td><td>double</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_vertical_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_vertical_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%focus%width_min_vertical_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%particles_fraction</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%particles_fraction_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%particles_fraction_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%particles_fraction_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%vertical</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%vertical_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%vertical_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%vertical_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%horizontal</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%horizontal_error_upper</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%horizontal_error_lower</td><td>double</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%divergence_component%horizontal_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%tangency_radii</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%tangency_radii_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%tangency_radii_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%tangency_radii_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%angles</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%angles_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%angles_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%angles_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%power_fractions</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%power_fractions_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%power_fractions_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%power_fractions_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td colspan="3">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%r</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%r_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%r_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%r_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%z</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%z_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%z_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%z_error_index</td><td>int</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%phi</td><td>double(:)</td><td align="center">✔</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%phi_error_upper</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%phi_error_lower</td><td>double(:)</td><td align="center">⁣</td></tr>
<tr><td align="left">nbi%unit(nbeam)%beamlets_group(nbgr)%beamlets%positions%phi_error_index</td><td>int</td><td align="center">⁣</td></tr>
</table>
<p>
<h3>Notes:</h3>
<ul>
<li> nbeam is the number of neutral beams used in the TRANSP simulation
<li> nbgr is the number of beamlet groups
<li> nbi%time(nsctime) MUST be allocated to avoid memory error when calling ids_put()
</ul>
</body>
</html>