| |
- orbit_cl
class orbit_cl |
|
Class for reading and filtering pre-calculated orbits
Members:
====================================================================
1. viewtype:<str>: instrument type
2. viewmode:<str>: view mode such as 'nadir', 'glint' etc
3. flnm :<str>: Name of orbit file (reserved for future use)
4. datapath:<str>: file path
5. yyyy :<int>: year
6. mm :<int>: month
7. dd :<int>: day
8. fopen :<func>: construct class file_desc_cl for accessing orbit file (see Note 5)
9. fread :<func>: read orbit data into fdesc (see Note 6)
10. fclose :<func>: orbit file close function (see Noye 7)
11. fget :<func>: get origin orbit table
12. var_name_dict:<dict>: translation between column name in the orbit file
--- and variable name in class
13. fio_keywords:<dict>: extra parameter for opening and reading orbit files
14. fdesc:<file_desc_cl>: file access class
15. orb:<dict>: orbit information
Functions
===============================================================
1. __init__: initialization
2. load_orbit_from_file: read orbit from file
3. grid_orbit: grid obit data into grid boxes defined by rlon, rlat
4. get_var: get variable stored in self.fdesc
Notes:
================================================================
1) After orbit file is read, self.orb and self.var_name_dict must
contain the following entries:
--- 1) 'lon' for longitude
--- 2) 'lat' for latitude
--- 3) 'sza' for solar zenith angle
--- 4) 'time' for time in seconds
2) self.fesc.dtable contains all data read from orbit files.
3) self.orb contains only those with their names in var_name_dict.
4) self.orb could have less records than fdesc after being regridded or being filtered
5) fopen is expected to have an interface like:
---fdesc=fopen(flnm, datapath, viewtype, viewmode, yyyy, doy, **keywords)
6) fread is expected to have an interface like:
---fdesc=fread(fdesc, **keywords)
7) fclose is expected to have an interface like:
---fclose(fdesc) |
|
Methods defined here:
- __init__(self, viewtype, viewmode, datapath, flnm, yyyy, mm, dd, fopen=<function open_orbit_file>, fread=<function read_orbit_file>, fclose=<function close_orbit_file>, fget=<function get_orbit_data>, varname_dict={'cnt': 'number', 'lat': 'lat', 'lon': 'lon', 'sza': 'sza', 'time': 'date'}, mask_val=-999.0, fio_keywords={})
- Initialization
Inputs:
---------------------------------------------
1. viewtype:<str>: instrument type
2. viewmode:<str>: view mode such as 'nadir', 'glint' etc
3. datapath:<str>: file path
4. flnm :<str>: Name of orbit file (reserved for future use)
5. yyyy :<int>: year
6. mm :<int>: month
7. dd :<int>: day
8. fopen :<func>: orbit file open function (Note 5).
9. fread :<func>: orbit file read function (Note 6).
10. fclose :<func>: orbit file close function (Note 7).
11. varname_dict:<dict>: translation between column name in orbit file
--- and variable name in class (Note 1).
12. fio_keywords:<dict>: extra parameter for opening and reading orbit files
- get_var(self, varname)
- get the variable stored in self.fdesc
Inputs:
------------------------------------
1. varname:<str>: variable name
Returns:
-------------------------------
1. var:<array> variable
- grid_orbit(self, rlon, rlat, update_orbit=True)
- grid orbit data into grid boxes defined by rlon, rlat
Inputs:
--------------------------------------------------
1. rlon: <array, (nlon)>: longitude grid in ascending order.
2. rlat: <array, (nlat)>: latitude grid in descending order.
3. reset_orbit:<T/F>: if true, self.orb will be set to new gridded data
Returns:
-------------------------------------
1. all_fields:<dict>: orbit data summaried at grid boxes defined by (rlonxrlat)
- load_orbit_from_file(self, yyyy, mm, dd, **keywords)
- read orbit from file
Inputs:
---------------------------------------------
1. yyyy :<int>: year
2. mm :<int>: month
3. dd :<int>: day
4. keywords :<dict>: extra parameters for file access
Returns
-----------------------------------------------
1. len(fdesc.dtable):<int>: number of record read in
| |