if (FALSE) {
require(IceSat2R)
#.......................................................
# parameter setting based on the output results from the
# 'examples' section of the 'get_atlas_data()' function
# so that we can iterate over the RGT's and Products for
# the specified time interval
#.......................................................
bbx = c(xmin = 140, ymin = -6.641235, xmax = 145, ymax = -1.641235)
start_date = "2021-02-03"
end_date = "2021-02-15"
RGTs = c(627, 756, 688, 619, 817)
Products = c('atl08', 'atl13')
#........................................................
# loop over the specified parameters and save the results
#........................................................
dat_out = logs_out = list()
for (prod_i in Products) {
for (track_i in RGTs) {
name_iter = glue::glue("{track_i}_{prod_i}")
cat(glue::glue("RGT: '{track_i}' Product: '{prod_i}'"), '\n')
iter_dat = get_level3a_data(minx = as.numeric(bbx['xmin']),
miny = as.numeric(bbx['ymin']),
maxx = as.numeric(bbx['xmax']),
maxy = as.numeric(bbx['ymax']),
startDate = start_date,
endDate = end_date,
trackId = track_i,
beamName = NULL, # return data of all 6 beams
product = prod_i,
client = 'portal',
outputFormat = 'csv',
verbose = FALSE)
iter_logs = list(RGT = track_i,
Product = prod_i,
N_rows = nrow(iter_dat))
logs_out[[name_iter]] = data.table::setDT(iter_logs)
dat_out[[name_iter]] = iter_dat
}
}
#.........................................
# each sublist corresponds to a different
# parameter setting (Track, Product)
#.........................................
dat_out
#.....
# Logs (including the number of rows for each parameter setting)
#.....
dtbl_logs = data.table::rbindlist(logs_out)
dtbl_logs = subset(dtbl_logs, N_rows > 0)
dtbl_logs = dtbl_logs[order(dtbl_logs$N_rows, decreasing = T), ]
dtbl_logs
}
Run the code above in your browser using DataLab