TABLE OF CONTENTS
- MLT_RSS/AMSU_zonal.f90
- MLT_RSS/AMSU_zonal.f90/amsu_put_in_zone
- MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec
- MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec
- MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec_direct
- MLT_RSS/AMSU_zonal.f90/zero_zonal_ave_rec
MLT_RSS/AMSU_zonal.f90 [ Programs ]
NAME
module amsu_zonal
PURPOSE
psuedoclass that defines and manipulates zonal means of AMSU data
DESCRIPTION
psuedoclass that defines and manipulates zonal means of AMSU data Components the pseudoclass defines a zonal average type type amsu_zonal_ave_rec type (date_str) :: begin_date type (date_str) :: end_date type(ave),dimension(NUM_ZONES,NUM_AMSU_FOVS,NUM_NODES,NUM_SURFACES+1) :: dat end type amsu_zonal_ave_rec and a second type that contains the same information, but with the date in rd2000 form. This is easier to write directly to a binary file. type amsu_zonal_output_structure integer(4) :: pentad_num real(8) :: begin_rd real(8) :: end_rd real(4),dimension(4,NUM_ZONES,NUM_AMSU_FOVS,NUM_NODES,NUM_SURFACES+1) :: dat end type amsu_zonal_output_structure ROUTINES zero_zonal_ave_rec(z) fills zonal average record z with initial values. put_in_zone(x,lon,lat,date,zone,fov,node,surf,z) adds a single observation to a zonal average record z
INPUTS
lon longitude of observation lat latitude of observation date date of observation, in data_str form fov field of view node ascending or descending z zonal average record to add to
OUTPUTS
zone zonal index of choosen zone surf surface type (land or ocean) of location z updated zonal average record put_scan_in_zone(scan,ok,z,chan,corr_level) adds a single MSU scan to a zonal average record
INPUTS
scan MSU scan structure ok array of fov quality flags z zonal average record to add to chan msu_channel corr_level msu correction level
OUTPUTS
z updated zonal average record put_scan_in_zone_xswath(scan,ok,z,chan,corr_level) adds a single cross-swath difference to a zonal average. deprecated. adds a single MSU scan to a zonal average record
INPUTS
scan MSU scan structure ok array of fov quality flags z zonal average record to add to chan msu_channel corr_level msu correction level
OUTPUTS
z updated zonal average record update_zonal_ave_rec(z) updates a zonal average record -- i.e computed averages from totals so they are consistent
INPUTS
z zonal average record to add to
OUTPUTS
z updated zonal average record write_zonal_ave_rec(z,lu,full,error) writes a zonal average record in standard binary form.
INPUTS
z zonal average record to write lu logical unit to write to full set to true to write "full" set of data
OUTPUTS
error error flag -- if non zero, write was not successful write_zonal_ave_rec_direct(pentad,offset,z,lu,error) writes a zonal average record in standard binary form to fortran direct access file.
INPUTS
pentad pentad number to write data to. offset beginning pentad number in file z zonal average record to write lu logical unit to write to
OUTPUTS
error error flag -- if non zero, write was not successful
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
use zonal
MLT_RSS/AMSU_zonal.f90/amsu_put_in_zone [ Programs ]
NAME
amsu_put_in_zone
PURPOSE
adds a single observation to a zonal average record
INPUTS
real(4) :: x ! The number to be added to average real(4) :: lon ! The longitude of the observation real(4) :: lat ! The latitude of the observation type(date_str) :: date ! Time and Date of the observation integer(4) :: zone ! zonal index integer(4) :: fov ! field of view index integer(4) :: node ! nodal index (asc = 1, desc = 2) integer(4) :: surf ! surface type index (1 = sea, 2 = land 3 = both) integer(4) :: lu_lug ! logical unit of log file
INPUTS_OUTPUTS
type(amsu_zonal_ave_rec),intent(INOUT) :: z ! zonal everage record to be added to
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
call amsu_put_in_zone(x,lon,lat,date,zone,fov,node,surf,z,lu_log)
MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec [ Programs ]
NAME
amsu_update_zonal_ave_rec
PURPOSE
updates average values in zonal average rec to reflect new total values
INPUTS_OUTPUTS
type(amsu_zonal_ave_rec),intent(INOUT) :: z ! zonal everage record to be updated
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
call amsu_update_zonal_ave_rec(z)
MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec [ Programs ]
NAME
amsu_write_zonal_ave_rec
PURPOSE
writes data in a zonal average record to logical unit lu.
INPUTS
type(amsu_zonal_ave_rec),intent(INOUT) :: z ! zonal everage record to be written integer(4) :: lu ! logical unit to write to logical(4) :: full ! flag is true then write a more complete record, otherwise, write num,mean,stddev,loc_time only
OUTPUTS
integer(4) :: error ! error flag, if 0, everything is OK
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
call amsu_write_zonal_ave_rec(z,lu,.true.,error)
MLT_RSS/AMSU_zonal.f90/amsu_update_zonal_ave_rec_direct [ Programs ]
NAME
amsu_write_zonal_ave_rec_direct
PURPOSE
writes data in a zonal average record to direct access file at logical unit lu.
INPUTS
integer(4) :: pentad integer(4) :: offset type(amsu_zonal_ave_rec) :: z ! zonal everage record to be written integer(4) :: lu ! logical unit to write to
OUTPUTS
integer(4) :: error ! error flag, if 0, everything is OK
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
call amsu_write_zonal_ave_rec(pentad_number,offset,z,lu,error)
MLT_RSS/AMSU_zonal.f90/zero_zonal_ave_rec [ Programs ]
NAME
zero_zonal_ave_rec
PURPOSE
fills zonal average record z with initial values.
INPUTS_OUTPUTS
type(amsu_zonal_ave_rec),intent(INOUT) :: z ! zonal everage record to be zeroed
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE CONSIDERED TO BE IN THE PUBLIC DOMAIN AND THUS ARE AVAILABLE FOR UNRESTRICTED PUBLIC USE. THEY ARE FURNISHED "AS IS." THE AUTHORS, THE UNITED STATES GOVERNMENT, ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE AND DOCUMENTATION FOR ANY PURPOSE. THEY ASSUME NO RESPONSIBILITY (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION! OR (2) TO PROVIDE TECHNICAL SUPPORT TO USERS.
HISTORY
9/21/2012 Initial Version prepared for NCDC
USAGE
call zero_zonal_ave_rec(z)