- Timestamp:
- May 3, 2016, 9:56:09 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/nc_var_tools.py
r740 r741 9330 9330 quit(-1) 9331 9331 9332 9333 9332 lonobj = objfile.variables[lonn] 9334 9333 latobj = objfile.variables[latn] … … 9383 9382 9384 9383 if len(lonv.shape) == 1: 9384 dlonn = loninf.dimns[0] 9385 dlatn = latinf.dimns[0] 9385 9386 dimx = lonv.shape[0] 9386 9387 dimy = latv.shape[0] … … 9389 9390 malonlat[:,i] = malon[i] + malat 9390 9391 elif len(lonv.shape) == 2: 9392 dlonn = loninf.dimns[1] 9393 dlatn = loninf.dimns[0] 9391 9394 dimx = lonv.shape[1] 9392 9395 dimy = lonv.shape[0] … … 9398 9401 print ' ' + fname + ': assuming that lon/lat is constant to the first dimension!!' 9399 9402 print ' shape lon:', lonv.shape, 'lat:', latv.shape 9403 dlonn = loninf.dimns[2] 9404 dlatn = loninf.dimns[1] 9400 9405 dimx = lonv.shape[2] 9401 9406 dimy = lonv.shape[1] … … 9442 9447 newdimx = elon - ilon + 1 9443 9448 newdimy = elat - ilat + 1 9449 9450 if len(malon.shape) == 1: 9451 datalonSW = lonv[ilon] 9452 datalatSW = latv[ilat] 9453 datalonNE = lonv[elon] 9454 datalatNE = latv[elat] 9455 elif len(malon.shape) == 2: 9456 datalonSW = lonv[ilat,ilon] 9457 datalatSW = latv[ilat,ilon] 9458 datalonNE = lonv[elat,elon] 9459 datalatNE = latv[elat,elon] 9460 elif len(malon.shape) == 3: 9461 datalonSW = lonv[0,ilat,ilon] 9462 datalatSW = latv[0,ilat,ilon] 9463 datalonNE = lonv[0,elat,elon] 9464 datalatNE = latv[0,elat,elon] 9465 9466 print ' ' + fname + ': final SW:', datalonSW, ',', datalatSW, 'NE:', datalonNE, \ 9467 ',', datalatNE 9444 9468 print ' ' + fname + ': new lon size:', ilon, ',', elon, 'new dimx:', newdimx 9445 9469 print ' ' + fname + ': new lat size:', ilat, ',', elat, 'new dimy:', newdimy … … 9448 9472 9449 9473 # Creation of lon,lat related dims 9450 newdim = newncobj.createDimension( lonn, newdimx)9451 newdim = newncobj.createDimension( latn, newdimy)9474 newdim = newncobj.createDimension(dlonn, newdimx) 9475 newdim = newncobj.createDimension(dlatn, newdimy) 9452 9476 9453 9477 # Adding lonn/latn to the output file … … 9476 9500 if not searchInlist(newncobj.dimensions, dimn): 9477 9501 newncobj.createDimension(dimn, len(objfile.dimensions[dimn])) 9478 if dimn == lonn:9502 if dimn == dlonn: 9479 9503 varslice.append(slice(ilon,elon+1)) 9480 elif dimn == latn:9504 elif dimn == dlatn: 9481 9505 varslice.append(slice(ilat,elat+1)) 9482 9506 else: … … 9503 9527 # global attributes 9504 9528 newncobj.setncattr('author', 'L. Fita') 9505 newncobj.setncattr('institution', 'Laboratire de Meteorologie Dynamique') 9529 newattr = set_attributek(newncobj, 'institution', unicode('Laboratoire de M' + \ 9530 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 9506 9531 newncobj.setncattr('university', 'Pierre Marie Curie - Jussieu') 9507 9532 newncobj.setncattr('center', 'Centre National de Recherches Scientifiques') … … 9511 9536 newncobj.setncattr('function', 'sellonlatbox') 9512 9537 newncobj.setncattr('version', '1.0') 9538 newncobj.setncattr('original_file', ncfile) 9539 newnattr = set_attributek(newncobj, 'lonSW', lonSW, 'R') 9540 newnattr = set_attributek(newncobj, 'latSW', latSW, 'R') 9541 newnattr = set_attributek(newncobj, 'lonNE', lonNE, 'R') 9542 newnattr = set_attributek(newncobj, 'latNE', latNE, 'R') 9543 newnattr = set_attributek(newncobj, 'data_lonSW', datalonSW, 'R') 9544 newnattr = set_attributek(newncobj, 'data_latSW', datalatSW, 'R') 9545 newnattr = set_attributek(newncobj, 'data_lonNE', datalonNE, 'R') 9546 newnattr = set_attributek(newncobj, 'data_latNE', datalatNE, 'R') 9547 newnattr = set_attributek(newncobj, 'data_pt_lonSW', ilon, 'I') 9548 newnattr = set_attributek(newncobj, 'data_pt_latSW', ilat, 'I') 9549 newnattr = set_attributek(newncobj, 'data_pt_lonNE', elon, 'I') 9550 newnattr = set_attributek(newncobj, 'data_pt_latNE', elat, 'I') 9513 9551 9514 9552 objfile.close() … … 17442 17480 onewfile.setncattr('version', '1.0') 17443 17481 onewfile.setncattr('author', 'L. Fita') 17444 onewfile.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 17482 newattr = set_attributek(onewnfile, 'institution', unicode('Laboratoire de M' + \ 17483 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 17445 17484 onewfile.setncattr('university', 'Pierre et Marie Curie') 17446 17485 onewfile.setncattr('country', 'France') … … 18446 18485 onewnc.setncattr('version', '1.0') 18447 18486 onewnc.setncattr('author', 'L. Fita') 18448 onewnc.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 18487 newattr = set_attributek(onewnc, 'institution', unicode('Laboratoire de M' + \ 18488 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 18449 18489 onewnc.setncattr('university', 'Pierre et Marie Curie') 18450 18490 onewnc.setncattr('country', 'France') … … 18792 18832 onewnc.setncattr('version', '1.0') 18793 18833 onewnc.setncattr('author', 'L. Fita') 18794 onewnc.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 18834 newattr = set_attributek(onewnc, 'institution', unicode('Laboratoire de M' + \ 18835 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 18795 18836 onewnc.setncattr('university', 'Pierre et Marie Curie') 18796 18837 onewnc.setncattr('country', 'France') … … 19686 19727 newnc.setncattr('version', '1.0') 19687 19728 newnc.setncattr('author', 'L. Fita') 19688 newnc.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 19729 newattr = set_attributek(newnc, 'institution', unicode('Laboratoire de M' + \ 19730 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 19689 19731 newnc.setncattr('university', 'Pierre et Marie Curie') 19690 19732 newnc.setncattr('country', 'France') … … 20083 20125 newnc.setncattr('version', '1.0') 20084 20126 newnc.setncattr('author', 'L. Fita') 20085 newnc.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 20127 newattr = set_attributek(newnc, 'institution', unicode('Laboratoire de M' + \ 20128 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 20086 20129 newnc.setncattr('university', 'Pierre et Marie Curie') 20087 20130 newnc.setncattr('country', 'France') … … 20484 20527 newnc.setncattr('version', '1.0') 20485 20528 newnc.setncattr('author', 'L. Fita') 20486 newnc.setncattr('institution', 'Laboratoire de Meteorology Dynamique') 20529 newattr = set_attributek(newnc, 'institution', unicode('Laboratoire de M' + \ 20530 unichr(233) + 't' + unichr(233) + 'orologie Dynamique'), 'U') 20487 20531 newnc.setncattr('university', 'Pierre et Marie Curie') 20488 20532 newnc.setncattr('country', 'France')
Note: See TracChangeset
for help on using the changeset viewer.