#include #include #include #include "TK_3DPR_hdf5.h" int main(void){ L3DPR_GRIDS* grids; int ret,ii,jj,kk,ll,mm; float plusVal; const float one=1.0; const float two=2.0; const float three=3.0; const float four=4.0; const float five=5.0; const float six=6.0; printf("Allocate the grid struct\n"); grids= (L3DPR_GRIDS*)malloc(sizeof(L3DPR_GRIDS)); if (grids == NULL) { printf("Error return from malloc\n"); exit(-1); } printf("sizeof of grids %fGB\n",((float)(sizeof(*grids))/1024/1024/1024)); printf("sizeof pointer to grids %d\n", sizeof(sizeof(L3DPR_GRIDS))); printf("Address of grids->G2.rain.count %p\n",grids->G2.rain.count); printf("Address of grids->G2.d0.count %p\n",grids->G2.d0.count); printf("Address of grids->G2.Nt.count %p\n",grids->G2.Nt.count); printf("Address of grids->G2.dBZm.count %p\n",grids->G2.dBZm.count); plusVal = 0.001; ii = 0; jj = 0; kk = 0; ll = 0; mm = 0; printf("location: %ld\n",(long)ii+jj+kk+ll+mm); grids->G2.dBZ.count[ii][jj][kk][ll][mm] = (int)4; grids->G2.dBZ.mean[ii][jj][kk][ll][mm] = one + plusVal; grids->G2.dBZ.stdev[ii][jj][kk][ll][mm] = two + plusVal; printf("G2.dBZ.stdev[ii][jj][kk][ll][mm] = %f\n",grids->G2.dBZ.stdev[ii][jj][kk][ll][mm]); printf("Address of grids->G2.dBZm.count %p\n",grids->G2.dBZm.count); grids->G2.dBZm.count[ii][jj][kk][ll][mm] = (int)5; printf("assigned G2.dBZm.count \n"); grids->G2.dBZm.mean[ii][jj][kk][ll][mm] = three + plusVal; printf("assigend G2.dBZm.mean\n"); grids->G2.dBZm.stdev[ii][jj][kk][ll][mm] = four + plusVal; printf("assigned G2.dBZm.stdev\n"); printf("Address of G2.d0.count %p\n",grids->G2.d0.count); printf("Going to assign d0.count\n"); grids->G2.d0.count[ii][jj][kk][ll][mm] = (int)6; printf("assigned G2.d0.count\n"); printf("Going to assign d0.mean\n"); grids->G2.d0.mean[ii][jj][kk][ll][mm] = five + plusVal; printf("assigned G2.d0.mean\n"); printf("Going to assign d0.stdev\n"); grids->G2.d0.stdev[ii][jj][kk][ll][mm] = six + plusVal; printf("assigned G2.d0.stdev\n"); printf("Successful write \n"); return 0; } /* end main */