-
Notifications
You must be signed in to change notification settings - Fork 293
To do list
-
github action: link checker as shown in https://github.com/GenericMappingTools/pygmt/actions/runs/17711235135/workflow
-
refactor
simulationmodule. Maybe ignore the compatibility (for an easier job and for better clarity), given that it's not actually used in any routine workflow, presumably only in Yunjun's 2019 paper? -
installation:
- add
EarthDataaccount description - use
AUX_DIRto replaceWEATHER_DIR, for ERA5, GNSS, GIM datasets; other default dir locations in the code need to be updated as well.
- add
-
subset.py: support subsetting files in radar-coord using lat/lon. [Need to refactor the code first, for different scenarios, radar/geo files, radar/geo inputs, different input approaches] -
sensor: use YAML or JSON file to store the sensor parameters, as shown here, instead of using pure Python currently, without showing much of the logic? -
load_data.pyupdates:- split
load_data.pyinto multiple smaller scripts, i.e.load_ifgram_stack.py,load_geometry.py,load_timeseries.py, with shared functions, for easier maintenance and more flexible usage. - drop the support of the custom config file, and allow the default config file
smallbaselineApp.cfgonly, to simplify the code. Users could usesmallbaselineApp.py custom_config_file -gto generate thesmallbaselineApp.cfgfile as needed.
- split
-
for
isce2/stripmapStack, add aprepSlcTSX.pyto uncompress the TSC data in*.tar.gzformat. -
load_data: replace the try/except call ofprep_modulewith a more meaningful error catch:- If
mintpy.load.*options exist and are valid, run as designed (with update mode turned ON) - If no or non-existent
mintpy.load.*options, if theinputsfolder exists and is valid, give a warning and continue; if theinputsfolder does not exist, return error and exit.
- If
-
overwrite the existing
data.rscfile if the isce can be imported and the new metadata dict includes more metadata. -
tsview: speedup by reading single pixel data on the fly while clicking -
diff.py: support two time series with different resolutions, e.g., timeseries.h5 and ion.h5, 1) to avoid upsampling the low-resolution iono stack from isce2 during load_data, and 2) to save disk space. -
support reading OPERA CSLC products in
view.pyandreadfile.py. -
leverage the
numTriNonzeroIntAmbiguity.h5info forunwrap_error_bridgingas in Oliver-Cabrera et al. (2021). -
merge
legacy/load2hdf5.pyintoload_data.pyas the former can be handy.- make
-tand-fas mutually exclusive options, to switch between loading via template file and loading into a single HDF5 file.
- make
-
use
tqdminstead ofmintpy.objects.progressBarobject, because:- it's simpler to use: 0-2 lines vs. 3 lines
-
tqdmuses pure Python, whileprogressBaruses numpy - Start testing with
ifgram_inversion.pyfor the overhead performance evaluation, then expand to the entire package.
-
view.py:
- Support plotting common geometries (points, lines, polygons) in KML, GMT, and WKT format.
- Auto-plot TS into one figure (for easy quality checking of error corrections) by fixing the width and auto-adjusting figure lengths, to be used in smallbaselineApp for the pic folder.
- draw range/azimuth direction arrows via
matplotlib AnchoredDirectionArrows
-
Apply to be a NumFOCUS-affiliated project.
-
merge
unwrap_error_bridging.pyandunwrap_error_phase_closure.pyintounwrap_error.py. -
move all the images from yunjunz's website to a GitHub repo (mintpy wiki, mintpy-tutorial, or create a new one just for images, or yunjunz's github page?), for better independency and more robust against the firewalls from countries to wordpress.com.
-
plate_motion:- support time-series as input
- integrate into smallbaselineApp.py via template options as below, with the former having a higher than the latter one, to avoid potential conflicts. This is fed as
plate_motion.py -toption.mintpy.plateMotion.platemintpy.plateMotion.omegaCartmintpy.plateMotion.omegaSphmintpy.plateMotion.constVelo
- support
--updateoption to auto-skip via arun_or_skip().
-
replace
printstatements with pythonloggingmodule
-
Move the user forum from Google Group to Discourse for a better interactive experience.
-
timeseries2velocity.py:
- save the output as velocity.h5 and velocityStd.h5. This would 1) eliminate the special "--nosearch" consideration of
view.py velocity.h5 dsetand 2) improve the visualization of the velocity file because velocity and velocityStd usually has very different color range.
- save the output as velocity.h5 and velocityStd.h5. This would 1) eliminate the special "--nosearch" consideration of
-
view: support fault overlay for geocoded files from public available dataset.
-
save_kmz_timeseries:
- customizable levels of steps/details
- write a guide to related details to the "eye alt" on Google Earth to guide users
- write a guide to find the memory limit of each computer and convert it to the setting of the script.
- define the initial Y-axis range of the time-series plot for the whole image. This range is currently scaled to each point, thus difficult to have a comparable view among different points.
-
Add unit test for the most vulnerable functions
-
add
mintpy.utils.print()for flexible printing and logging- bool argument
print_msgto replace vprint() in view.py. - bool argument
logto turn on/off logging to a local filemintpy.login the current directory viarich.console - str argument
syntaxsuch as "python", "bash", "csh", "cfg", etc. to highlight output syntax viarich.syntax
- bool argument
-
Explore the GPU-speedup with
cupyforifgram_inversion.py
-
add example datasets for ISCE-2/alosStack and ISCE-2/stripmapStack using AlosAT424 dataset on Kirishima.
-
use
fastai/nbdevto re-write the documentation, including tutorials and APIs. -
switch from readthedocs to the leafmap (https://leafmap.org/) style? It's more modern and cleaner, and supports embeding notebooks-converted html (https://leafmap.org/notebooks/00_key_features/).
-
add API document with usage extracted from code and with the source link, e.g. geocube
-
Add interactive jupyter notebook using Google Colab, so that one can run those example using a web browser only.
- output uncertainty time-series
-
use empty
mintpy.objects.__init__.pyfile -
replace
objectsandutilssub-module names with more meaningful group names, e.g.,geometry,stdproc, etc.
- convert the isce2 earthdef archive into github issues/discussions using redmine to github (suggested by Piyush).