# Limitations
While PyGEM has a number of strengths, we also want to be transparent of several limitations that the current version has:
* **Monthly timestep**: while we plan to add the option to use daily data in the future, the model is currently only set up for monthly timesteps.
* **ERA5 climate data**: we currently use ERA5 data as our reference data and this is the only dataset that PyGEM currently supports. We are aware of recent studies that have shown reanalysis precipitation data have issues compared to other data (Alexander et al. 2020) and may consider alternative precipitation data in the future.  The class_climate.py script can be modified to incorporate others.
* **Geodetic mass balance data**: while we envision adding options to incorporate other datasets (e.g., multiple mass balance datasets, mass balance gradients, snowline altitudes) for model calibration, the current framework is set up for a single glacier-wide mass balance observation for each glacier. Note that the geodetic mass balance data requires the time period to be specific with each observation; however, the time period does not have to be the same for each glacier.
* **Glacier-specific workflow**: the model requires mass balance data for each glacier for model calibration. We hope to incorporate regional data as well in the future.
* **Off-glacier snow accumulation**: when the glacier retreats, the model continues to compute accumulation, melt, and refreeze of snow over the deglaciated area. Glacier retreat may create off-glacier areas at high altitudes. At high altitudes, it’s possible for the temperature to be negative year-round and thereby cause off-glacier snow to accumulate unrealistically over time. Potential solutions could include removing the snow each year assuming that it sublimates, developing an avalanche parameterization to add the snow onto the glacier, or an alternative we have not yet considered. It is good to be aware of this since snow at this elevation will not contribute to off-glacier runoff since it doesn’t melt.
* **Runoff for advancing glaciers**: when the glacier advances, the model continues to compute the runoff over the entire glacier area, which may exceed the initial glacierized area.
* **Initialization at 2000**: the RGI is used to initialize the glacier areas. While the RGI targets all glacier extents to be from 2000, this may significantly vary depending on the source of the data. We assume the glacier extents represent 2000 and do not correct for these issues.
* **Mass balance-ice thickness circularity issues**: circular issues exist regarding the derivation of the mass balance gradient and the ice thickness, i.e., a mass balance gradient is needed to estimate the ice thickness and yet the ice thickness will determine how the glacier evolves. To avoid these circularity issues, we calibrate the model assuming the glacier area is constant.
* **Frontal ablation for marine-terminating glaciers**: currently the frontal ablation parameterization is only set up for marine-terminating glaciers based on the terminus type specific by the RGI. Theoretically, the same framework could be applied to lake-terminating glaciers, but to our knowledge, datasets for calibration are not yet available and the formation of lakes is not yet included in the model.
* **Continual development**: PyGEM is constantly evolving. We will do our best to keep documents updated, but it's always helpful to let us know if you're using PyGEM so we can ensure you are aware of the latest and/or upcoming changes.