[ Top ] [ Programs ]
NAME
module date_and_time
PURPOSE
pseudoclass for date and time calculations
DESCRIPTION
pseudoclass for date and time calculations.
VARIABLES
the pseudoclass has two important types defined type time_str real(8) :: m_secs ! seconds since midnight integer(4) :: hour ! hour of day integer(4) :: minute ! minute of hour real(8) :: sec ! second of minute logical :: updated ! true if m_secs agree with hours,minute and second end type time_str type date_str real(8) :: r_d ! days since Jan 1, 1, gregorian calender real(8) :: rd_2000 ! days since Jan 1, 2000 integer(4) :: year ! year integer(4) :: oday ! ordinal day in the given year integer(4) :: month ! month in year integer(4) :: day ! day in month type(time_str) :: time ! time of day logical :: updated ! true if Jul_day agrees with other info end type date_str
REMARKS
There are 3 overloaded subroutines for setting the date and time
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
2/21/2012 Initial Version prepared for NCDC
USAGE
use date_and_time
[ Top ] [ Programs ]
NAME
set_date
PURPOSE
set_date sets the date and time using 6 different methods. The method is choosen automatically depending on the
DESCRIPTION
set_date sets the date and time using 6 different methods. The method is choosen automatically depending on the number and type of the arguments. here is a list of the methods: -module procedure set_date_int_r_d !(r_d,error) 2 integer(4)'s -module procedure set_date_real_r_d !(r_d,error) 1 real(8) and 1 integer(4) -module procedure set_date_m_d_y !(month,day,year,error) 4 integer(4)'s -module procedure set_date_m_d_y_int_t !(month,day,year,hour,minute,second,error) 7 integer(4)'s -module procedure set_date_m_d_y_real_t !(month,day,year,hour,minute,second,error) 5 integer(4)'s, 1 real(8), 1 integer(4) -module procedure set_date_m_d_y_m_secs !(month,day,year,secs_since_midnight,error) 3 integer(4)'s, 1 real(8), 1 integer(4) -module procedure set_date_od_y_msecs !(secs_since_midnight,ordinal_day#,year,error) 1 real(8), 3 integer(4)'s !
[ Top ] [ Programs ]
NAME
set_time
PURPOSE
sets the time of day using two different methods. The method is chosen automatically depending on the number and type of arguments NAME type(time_str) function set_time_msecs(msecs,error)
INPUT
real(8),intent(IN) :: msecs !seconds since midnight
OUTPUT
integer(4),intent(OUT) :: error !set to zero if no error
RETURN VALUE
type(time_str) :: time
USAGE
time = set_time(msecs,error)\ NAME type(time_str) function set_time_hms(hours,minutes,secs,error)
INPUTS
integer(4) :: hours !hour of day (0 - 23) integer(4) :: minutes !minutes in hour real(8),intent(IN) :: secs !seconds in minute
OUTPUT
integer(4),intent(OUT) :: error !set to zero if no error
RETURN VALUE
type(time_str) :: time
USAGE
time =set_time(hour,minutes,secs,error)
[ Top ] [ Subroutines ]
NAME
amsu_ccm3_diurnal_tb
PURPOSE
calculates diurnal value from diurnal climatology for given channel,fov,location,date and local_time
INPUTS
chan AMSU_CHANNEL fov AMSU Field of View lon longitude lat latitude date date, to find time of year, in date structure (date_str) defined in date_and_time.f90 local_time local time, defined in time structure (time_str) defined in date_and_time.f90
RETURNED VALUE
diur_tb interpolated value of dirunal Tb
USAGE
tb_diurnal = amsu_ccm3_diurnal_tb(chan,fov,lon,lat,date,local_time)
[ Top ] [ Subroutines ]
NAME
calculate_diurnal_correction
PURPOSE
Calculate Diurnal Correction for a single AMSU scan line
INPUTS
channel AMSU channel number
INPUTS_OUTPUTS
L2A_Scan Structure containing AMSU L2A Scan data
OUTPUTS
Error Error Flag. 0 if everything OK, not zero otherwise
USAGE
Call calculate_diurnal_correction(L2A_scan,channel,error)
[ Top ] [ Subroutines ]
NAME
read_amsu_ccm3_diurnal
PURPOSE
reads CCM3-derived AMSU Diurnal Climatology for the given AMSU channel
INPUTS
chan AMSU channel
OUTPUTS
error error flag. 0 if everything OK, -1 if invalid channel passed
REMARKS
loads climatology into the module variable diur_tb_sim. The number of the channel currently loaded is contained in channel_loaded
USAGE
call read_amsu_ccm3_diurnal(5,error)
[ Top ] [ Subroutines ]
NAME
AMSU_equator_crossing_times.f90
PURPOSE
Module for finding ascending node equator crossing times for NOAA and EUMETSAT satellites
DESCRIPTION
Module for finding ascending node equator crossing times for NOAA and EUMETSAT satellites
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_equator_crossing_times
SUBPROGRAMS:
NAME
equator_crossing_rd_2000_from_AMSU_rev_num
PURPOSE
Calculate Diurnal Correction for a single AMSU scan line
INPUTS
sat_num AMSU satellite number (10 = NOAA-15, 11 = NOAA-16, etc) rev_num AMSU orbit number.
OUTPUTS
Error Error Flag. 0 if everything OK, not zero otherwise
RETURNED VALUE
ascending node eqaotor crossing time in rd_2000 format (days since midnight, jan 1, 2000) (real*8)
USAGE
crossing_time = equator_crossing_rd_2000_from_AMSU_rev_num(sat_num,rev_num,error)
NAME
AMSU_rev_num_from_rd_2000
PURPOSE
Calculates AMSU rev num from time in rd_2000 format
INPUTS
sat_num AMSU satellite number (10 = NOAA-15, 11 = NOAA-16, etc) rd_2000 Time in rd_2000 format
OUTPUTS
Error Error Flag. 0 if everything OK, not zero otherwise
RETURNED VALUE
AMSU orbit number corresponding to given time
USAGE
orbit_num = AMSU_rev_num_from_rd_2000(sat_num,rd_2000,error)
NAME
load_NOAA_15_eqx_data
PURPOSE
reads equator crossing time data for NOAA-15 SIDE EFFECTS loads climatology into the module variable eq_x_time_NOAA_15, and the equator crossing longitude into eq_x_longitude_NOAA_15.
REMARKS
exactly analogous routines exist for the other NOAA and EUMETSAT satellites. (NOAA-16, etc.) These are: - load_NOAA_16_eqx_data - load_NOAA_17_eqx_data - load_NOAA_18_eqx_data - load_NOAA_19_eqx_data - load_METOP_A_eqx_data
USAGE
load_NOAA_15_eqx_data
[ Top ] [ Subroutines ]
NAME
AMSU_inventory
PURPOSE
AMSU_inventory psuedoclass
DESCRIPTION
pseudoclass for reading and writing AMSU orbit inventories
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
2/21/2012 Initial Version prepared for NCDC
USAGE
use msu_L2A_inventory
[ Top ] [ Subroutines ]
NAME
read_amsu_l1b_inventory_file(sat_num,inv,error)
PURPOSE
reads AMSU L1B Inventory file
INPUTS
sat_num AMSU satellite number (10 = NOAA-15, etc)
OUTPUTS
type(amsu_inventory_str) :: inv ! inventory of AMSU orbits in structured variable. integer(4) :: error ! error flag. 0 if all OK, -1 if out of bounds satellite number passed
USAGE
read_amsu_l1b_inventory_file(sat_num,inv,error) write_msu_L2A_inventory_file_text update_L2A_inventory_data
[ Top ] [ Subroutines ]
NAME
add_corrections_to_AQUA_L2A_orbits
PURPOSE
Adds corrections to AMSU-AQUA L2A orbit files.
DESCRIPTION
Adds corrections to AMSU-AQUA L2A orbit files. AQUA files arrive as brightness temperatures, so L1B to L2A is not needed. For NOAA and EUMETSAT satellites, diurnal and angle adjustments are performed as this conversion is done. So we need a separate routine for AQUA to calculate adjustments.
INPUTS
integer(4) :: sat_num ! satellite name (NOAA-15, etc) integer(4) :: channel ! AMSU channel integer(4) :: num_orbits ! number of orbits to process integer(4),dimension(MAX_ORBITS_TO_PROCESS) :: orbit_list ! list of orbits to process
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
2/21/2012 Initial Version prepared for NCDC
USAGE
call add_corrections_to_AQUA_L2A_orbits(sat_num,channel,num_orbits,orbit_list)
[ Top ] [ Subroutines ]
NAME
AQUA_AMSU_L2A_add_corrections_driver
PURPOSE
To level driver routine for adding corrections to AMSU-AQUA L2A orbit files.
DESCRIPTION
Adds corrections to AMSU-AQUA L2A orbit files. AQUA files arrive as brightness temperatures, so L1B to L2A is not needed. For NOAA and EUMETSAT satellites, diurnal and angle adjustments are performed as this conversion is done. So we need a separate routine for AQUA to calculate adjustments.
INPUTS
integer(4) :: channel ! AMSU channel, command line argument INPUT FILE file of robit numbers to process: orbits_to_adjust.txt integer(4) :: num_orbits ! number of orbits to process integer(4),dimension(MAX_ORBITS_TO_PROCESS) :: orbit_list ! list of orbits to process
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
10/21/2012 Initial Version prepared for NCDC
USAGE
AQUA_AMSU_L2A_add_corrections_driver 5 (at command line)
[ Top ] [ Subroutines ]
NAME
decode_AMSU_L2A_Header
PURPOSE
decodes AMSU L2A Header in binary form to structured form
INPUTS
character(len = AMSU_LEVEL_2A_RECORD_LENGTH) :: scan_string ! header and scan valid data in bianry form for writing to L2A file
OUTPUTS
type(AMSU_L2A_orbit_header) :: L2A_orbit_header ! in structured from integer(4),dimension(AMSU_MAX_SCANS_PER_ORBIT) :: scan_valid ! positive value means scan is valid
USAGE
call decode_AMSU_L2A_Header(scan_string,L2A_orbit_header,scan_valid)
[ Top ] [ Subroutines ]
NAME
decode_AMSU_L2A_scan
PURPOSE
decodes AMSU L2A scan to structured from binary form
INPUTS
character(len = AMSU_LEVEL_2A_RECORD_LENGTH) :: scan_string ! header and scan valid data in bianry form for writing to L2A file
OUTPUTS
type(AMSU_A_L2A_Swath_Data) :: AMSU_L2A_scan
USAGE
call encode_AMSU_L2A_scan(AMSU_L2A_scan,scan_string)
[ Top ] [ Subroutines ]
NAME
encode_AMSU_L2A_Header
PURPOSE
encodes AMSU L2A Header from structured to binary form
INPUTS
type(AMSU_L2A_orbit_header) :: L2A_orbit_header ! in structured from integer(4),dimension(AMSU_MAX_SCANS_PER_ORBIT) :: scan_valid ! positive value means scan is valid integer(4) :: channel ! AMSU channel
OUTPUTS
character(len = AMSU_LEVEL_2A_RECORD_LENGTH) :: scan_string ! header and scan valid data in bianry form for writing to L2A file
USAGE
call encode_AMSU_L2A_Header( L2A_orbit_header,scan_valid,scan_string)
[ Top ] [ Subroutines ]
NAME
encode_AMSU_L2A_scan
PURPOSE
encodes AMSU L2A scan from structured to binary form
INPUTS
type(AMSU_A_L2A_Swath_Data) :: AMSU_L2A_scan
OUTPUTS
character(len = AMSU_LEVEL_2A_RECORD_LENGTH) :: scan_string ! header and scan valid data in bianry form for writing to L2A file
USAGE
call encode_AMSU_L2A_scan(AMSU_L2A_scan,scan_string)
[ Top ] [ Subroutines ]
NAME
zero_amsu_L2A_orbit_file_header
PURPOSE
zeros AMSU L2A scan in structured form
INPUTS_OUTPUTS
type(AMSU_L2A_orbit_header) :: L2A_orbit_header
USAGE
callzero_amsu_L2A_orbit_file_header(L2A_orbit_header)
[ Top ] [ Subroutines ]
NAME
read_AMSU_L2A_orbit_file
PURPOSE
reads AMSU_L2A_orbit_file
INPUTS
character(len=7) :: satellite_name ! satellite name (NOAA-15, etc) integer(4) :: orbit_number ! AMSU orbit number integer(4) :: channel ! AMSU channel
OUTPUTS
type(AMSU_L2A_orbit_header) :: L2A_orbit_header ! in structured from type(AMSU_L2A_orbit_data) :: L2A_orbit ! in structured from integer(4) :: error ! error flag
USAGE
call write_AMSU_L1A_orbit_file( satellite_name,orbit_num,channel,L2A_orbit_header,L2A_orbit,error)
[ Top ] [ Subroutines ]
NAME
read_AMSU_L2A_orbit_file_header
PURPOSE
reads AMSU_L2A orbit file header
INPUTS
character(len=7) :: satellite_name ! satellite name (NOAA-15, etc) integer(4) :: orbit_number ! AMSU orbit number integer(4) :: channel ! AMSU channel
OUTPUTS
type(AMSU_L2A_orbit_header) :: L2A_orbit_header ! in structured from integer(4) :: error ! error flag
USAGE
call write_AMSU_L1A_orbit_file_header(satellite_name,orbit_num,channel,L2A_orbit_header,error)
[ Top ] [ Subroutines ]
NAME
write_AMSU_L2A_orbit_file
PURPOSE
writes AMSU_L2A_orbit_file
INPUTS
character(len=7) :: satellite_name ! satellite name (NOAA-15, etc) integer(4) :: orbit_number ! AMSU orbit number integer(4) :: channel ! AMSU channel type(AMSU_L2A_orbit_header) :: L2A_orbit_header ! in structured from type(AMSU_L2A_orbit_data) :: L2A_orbit ! in structured from
OUTPUTS
integer(4) :: error ! error flag
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
2/21/2012 Initial Version prepared for NCDC
USAGE
call write_AMSU_L1A_orbit_file( satellite_name,orbit_num,channel,L2A_orbit_header,L2A_orbit,error)
[ Top ] [ Subroutines ]
NAME
zero_amsu_L2A_scan
PURPOSE
zeros AMSU L2A scan in structured form
INPUTS_OUTPUTS
type(AMSU_A_L2A_Swath_Data) :: AMSU_L2A_scan
USAGE
call zero_amsu_L2A_scan(L2A_Scan)
[ Top ] [ Methods ]
NAME
AMSU_Constants.f90
PURPOSE
Module containing constants for AMSU processing
DESCRIPTION
Module containing constants for AMSU processing. Contains physical constants, file unit numbers, and constant related to satellite operation
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_Constants
[ Top ] [ Methods ]
NAME
AMSU_Diurnal.f90
PURPOSE
Module for performing diurnal adjustment to AMSU measurements
DESCRIPTION
Module for performing diurnal adjustment to AMSU measurements Uses a model derived diurnal climatology to make the adjustment
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_Diurnal
[ Top ] [ Methods ]
NAME
AMSU_File_Locations.f90
PURPOSE
Module containing file locations for AMSU processing
DESCRIPTION
Module containing file locations for AMSU processing
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_File_Locations
[ Top ] [ Methods ]
NAME
AMSU_Level_2A.f90
PURPOSE
Module for reading, writing and storing AMSU L2A data
DESCRIPTION
Module for reading, writing and storing AMSU L2A data. L2A files are stored in flat binary form, so there is quite a bit of code that converts from the flat binary form to easier to understand fortran structures. Structures are defined in AMSU_types.f90
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_Level_2A
[ Top ] [ Methods ]
NAME
AMSU_Quality.f90
PURPOSE
Module for performing rudimentary quality control for AMSU brightness temperatures
DESCRIPTION
Module for performing rudimentary quality control for AMSU brightness temperatures
ROUTINES
subroutine evaluate_amsu_quality_indicator(quality_indicator,scan_ok) ! evaluates NOAA quality bits for fatal problems subrouinte check_tbs_against_bounds(Tbs,chan,fov_qual) ! checks TBs against reasonableness bounds for each channel
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
use AMSU_quality
[ Top ] [ Methods ]
NAME
check_tbs_against_bounds
PURPOSE
Checks brightness temperatures agains reasonableness bounds.
DESCRIPTION
Checks brightness temperatures agains reasonableness bounds.
INPUTS
integer(4) :: quality indicator ! 4 byte integer of quality indicator flags
OUTPUTS
integer(1),dimension(30) :: fov_qual ! field of view flag -- set to negative number if out of bounds ! or not finite
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
call check_tbs_against_bounds(Tbs,chan,fov_qual)
[ Top ] [ Methods ]
NAME
evaluate_amsu_quality_indicator
PURPOSE
Evaluates NOAA provided quality flags for fatal errors
DESCRIPTION
Evaluates NOAA provided quality flags for fatal errors
INPUTS
integer(4) :: quality indicator ! 4 byte integer of quality indicator flags
OUTPUTS
logical(4) :: scan_ok ! flag -- set true of scan appears to be OK
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
8/15/2012 Initial Version prepared for NCDC
USAGE
call evaluate_amsu_quality_indicator(quality_indicator,scan_ok)
[ Top ] [ Methods ]
NAME
module NAN_Support
PURPOSE
module containing Not-A-Number wrapper routines for intel compiler and constant parameter NAN valued set equal to 1.0/0.0 emulates behavior of early module for a compiler that did not explicitly support ieee not-a-numbers
DESCRIPTION
module Not-A-Numbers Wrapper routines for intel compiler
ROUTINES
logical function finite(x), overloaded to accept both real(4) and real(8) arguaments
INPUTS
x real number to be tested
OUTPUTS
returns logical true if number is finite, false if number in any type of non-finite number
AUTHOR
Carl Mears, Remote Sensing Systems
COPYRIGHT
THIS SOFTWARE AND ITS DOCUMENTATION ARE COPYRIGHT 2012 REMOTE SENSING SYSTEMS. THEY ARE PROVIDED FOR INFORMATIONAL AND ALGORITHM VERIFICATION PURPOSES ONLY AND MAY NOT BE USED IN WHOLE OR IN PART FOR ANY OTHER PURPOSE WITHOUT WRITTEN PERMISSION FROM REMOTE SENSING SYSTEMS. 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
2/21/2012 Initial Version prepared for NCDC
USAGE
use NAN_Support