This is the path to the MRTSwath
executable swath2grid. If your ~/.Rprofile
file has the location of swath2grid in the PATH,
then you can just use mrtpath="swath2grid".
Otherwise, the user must provide the full path to
swath2grid.
prmfn
The name of the parameter/control file which
will be the input to MRTSwath's swath2grid
function.
tifsdir
The directory to save the output TIF files
in
modfn
The filename of the MODIS data
geoloc_fn
The filename of the corresponding
geolocation file (annoyingly, this is a much larger file
than the data file!)
ul_lon
Upper left (ul) longitude (x-coordinate)
for subsetting
ul_lat
Upper left (ul) latitude (y-coordinate) for
subsetting
lr_lon
Lower right (lr) longitude (x-coordinate)
for subsetting
lr_lat
Lower right (lr) latitude (y-coordinate)
for subsetting
Details
If you want this function to use MRTSwath tool
successfully, you should add the directory with the
MRTSwath executable to the default R PATH by editing
~/.Rprofile.
Value
cmdstr The string giving the system command that
ran swath2grid
#######################################################
# Run MRTSwath tool "swath2grid"
#######################################################
# Source MODIS files (both data and geolocation)
# Code excluded from CRAN check because it depends on modiscdata
## Not run:
library(devtools)
# The modiscdata (MODIS c=cloud data=data) package is too big for CRAN (60 MB); so it is available on github:
# https://github.com/nmatzke/modiscdata
# If we can't get install_github() to work, try install_url():
# install_github(repo="modiscdata", username="nnmatzke")
install_url(url="https://github.com/nmatzke/modiscdata/archive/master.zip")
library(modiscdata)
moddir = system.file("extdata/2002raw/", package="modiscdata")
# Get the matching data/geolocation file pairs
fns_df = check_for_matching_geolocation_files(moddir, modtxt="MYD35_L2", geoloctxt="MYD03")
fns_df
# Resulting TIF files go in this directory
tifsdir = getwd()
# Box to subset
ul_lat = 13
ul_lon = -87
lr_lat = 8
lr_lon = -82
for (i in 1:nrow(fns_df))
{
prmfn = write_MRTSwath_param_file(prmfn="tmpMRTparams.prm", tifsdir=tifsdir, modfn=fns_df$mod35_L2_fns[i], geoloc_fn=fns_df$mod03_fns[i], ul_lon=ul_lon, ul_lat=ul_lat, lr_lon=lr_lon, lr_lat=lr_lat)
print(scan(file=prmfn, what="character", sep="\n"))
run_swath2grid(mrtpath="swath2grid", prmfn="tmpMRTparams.prm", tifsdir=tifsdir, modfn=fns_df$mod35_L2_fns[i], geoloc_fn=fns_df$mod03_fns[i], ul_lon=ul_lon, ul_lat=ul_lat, lr_lon=lr_lon, lr_lat=lr_lat)
}
list.files(tifsdir, pattern=".tif", full.names=TRUE)
## End(Not run)