These nc4 files are designed to include all data in the GSI input BUFR file and the GSI output obs_diag files (latter based on GMAO code). They also include any model info needed by the obs operator.
AMSU-A file info:
Any variables I created in the nc4 files have names that are identical to the GSI code.
There are three dimensions in the file:
nobs_bufr : number of input obs. These variables are in read_bufrtovs.f90
nobs : number of output obs (in obs_diag file). This is GMOA's code
nsig (nsig+1): these are the model variables, and are in setuprad.f90 / the call_crtm routine.
[There is no write routine for 3d variables, so I wrote cloud out as cloud1 (for n_clouds_fwd=1) and cloud2 (for n_clouds_fwd=2). Same for cloudefr. ]
I've also added an extra variable that stores the index of a given datum in the input file (you can use this to trace an obs_diag output back to the input obs):
int Obs_Input_File_Index(nobs)