Reading Output¶
XGC outputs ADIOS2 files (*.bp), which can be read by XGC itself, e.g., for restarting or analyzed with C/C++/Fortran/Python/Matlab.
In a terminal, users can quickly check the contents of variables written inside a ADIOS2 file with bpls
utility. An example output is as follows:
$ bpls -lva xgc.mesh.bp
File info:
of variables: 23
of attributes: 7
statistics: Min / Max
string /XP_CLASS attr = "Mesh"
string /cell_set[0]/cell_name attr = "Tri"
int32_t /cell_set[0]/ncells attr = 2762126
int32_t /cell_set[0]/node_connect_list {2762126, 3} = 0 / 1383674
int32_t /cell_set[0]/nodes_per_elem attr = 3
double /coordinates/values {1383675, 2} = -4.5643 / 8.3938
int32_t /ncell_sets attr = 1
int32_t /nnodes attr = 1383675
int32_t /nspace attr = 2
double epsilon {400} = 0 / 0.361958
int32_t grid_nwall scalar = 5222
int32_t grid_wall_nodes {5222} = 1375857 / 1381078
double mapping {2762126, 3, 2} = -51864.7 / 85140.1
int32_t n_geo scalar = 400
int32_t n_n scalar = 1383675
int32_t n_t scalar = 2762126
int32_t nd_connect_list {2762126, 3} = 0 / 1383674
int32_t nextnode {1383675} = 0 / 1383674
double node_vol {1383675} = 1.677e-08 / 0.00252515
double node_vol_ff0 {1383675} = 9.97916e-09 / 0.00126423
double node_vol_ff1 {1383675} = 7.83344e-09 / 0.00126383
double node_vol_nearest {1383675} = 1.75853e-08 / 0.00252601
double one_per_dx {2, 1383675} = 0.774202 / 1.71111
double psi {1383675} = 0 / 11.2365
double qsafety {400} = 1.13299 / 15.025
double rmaj {400} = 6.11042 / 6.55989
double rmin {400} = 0 / 2.21546
double rz {1383675, 2} = -4.5643 / 8.3938
double tr_area {2762126} = 1.2808e-08 / 0.000922785
double trapped {400} = 0.210179 / 0.644313
To run bpls
, ADIOS2’s bin
directory should be in PATH env. Most systems (Summit, Cori, Theta) have installed ADIOS2 by default and users can use by module
command:
$ module load adios2
For more details, please refer to Adios2 user manual.