; Writes phi averages in the HDF5 format pro pc_write_phiaver, obj, iteration, truncate=truncate, last=last, datadir=datadir, dim=dim, run_param=run_param, quiet=quiet datadir = pc_get_datadir (datadir) default, truncate, 0 if (not keyword_set (dim)) then pc_read_dim, obj=dim, datadir=datadir, quiet=quiet if (not keyword_set (run_param)) then pc_read_param, obj=run_param, /run_param, quiet=quiet varfile = 'phi.h5' h5_open_file, datadir+'/averages/'+varfile, /write, truncate=truncate labels = strlowcase (tag_names (obj)) num_labels = n_elements (labels) group = str (iteration) h5_create_group, group h5_write, group+'/time', obj.t for pos = 0, num_labels-1 do begin label = labels[pos] if (any (label eq [ 't', 'nvars', 'z', 'labels' ])) then continue h5_write, group+'/'+label, obj.(pos) end if (keyword_set (truncate) or not h5_contains ('r')) then begin h5_write, 'r', obj.rcyl h5_write, 'dr', 2 * run_param.xyz1[0] / dim.nxgrid end if (size (last, /type) eq 0) then begin if (h5_contains ('last')) then begin last = h5_read ('last') if (last lt iteration) then begin last = iteration h5_write, 'last', last end end else begin h5_write, 'last', iteration end end else begin if (last lt iteration) then last = iteration h5_write, 'last', last end h5_close_file end