Overview
To support the selection of inversion coefficients during rheology and/or friction inversion, the Australian ice sheet modelling community has requested capability to assess various inversion configurations to support the decision of "optimal" inversions. In particular, it would be useful to assess (at a minimum) the following diagnostics for various combinations of coefficient pairs:
- Area-weighted RMSE (sim - obs velocity)
- Ratio of the cost functions
- Magnitude of cost
- Convergence – at the end and during the simulation (from *.outlog)
- Area (and proportion?) of domain with +ve vs -ve velocity difference
- Slope of inverted field
The following plotting functionality should also be included:
- Velocity differences
- Friction field
- Heat maps with above diagnostics
- Distribution of velocity differences
- Distribution of the slope of the friction field
Initial ideas
This implementation likely requires a suite of functions, something like:
pyissm.tools.inversion.diagnostics() - Overall function to return a pandas table of diagnostic values from select value-pairs of coefficients. This would call functions such as:
pyissm.tools.general.area_weighted_diagnostics() - Function to compute area-weighted values (e.g., mean, RMSE, etc.) from a given model field.
pyissm.tools.inversion.param_sensitivity() - Parent function to control model IO for select value-pairs of coefficients
pyissm.plot.inversion_param_sensitivity() - Plotting function to plot results of pyissm.tools.inversion.diagnostics(). This would likely contain a series of granular functions to plot specific pieces of the puzzle.
Overview
To support the selection of inversion coefficients during rheology and/or friction inversion, the Australian ice sheet modelling community has requested capability to assess various inversion configurations to support the decision of "optimal" inversions. In particular, it would be useful to assess (at a minimum) the following diagnostics for various combinations of coefficient pairs:
The following plotting functionality should also be included:
Initial ideas
This implementation likely requires a suite of functions, something like:
pyissm.tools.inversion.diagnostics()- Overall function to return a pandas table of diagnostic values from select value-pairs of coefficients. This would call functions such as:pyissm.tools.general.area_weighted_diagnostics()- Function to compute area-weighted values (e.g., mean, RMSE, etc.) from a given model field.pyissm.tools.inversion.param_sensitivity()- Parent function to control model IO for select value-pairs of coefficientspyissm.plot.inversion_param_sensitivity()- Plotting function to plot results ofpyissm.tools.inversion.diagnostics(). This would likely contain a series of granular functions to plot specific pieces of the puzzle.