Skip to content

Releases: pysiral/pysiral

Product update (CCI, Cryo-TEMPO, AWI)

29 Feb 14:17
2fa6c6a
Compare
Choose a tag to compare

This release contains updates of different product lines and modest changes to the algorithm code base.

Notable Changes

  • Updated processor and output definitions for CCI, AWI & CryoTEMPO
  • Added support for Sentinel-3A/B l2 thematic sea ice product
  • Added support for SAMOSA+ retracker (@djbwork) Currently requires external library
  • Added multiprocessing options
  • Added waveform tail parameter

Full ChangelLog

Product update (C3S, AWI, CCI, CryoTEMPO)

13 Oct 08:24
59afba2
Compare
Choose a tag to compare

This release contains updates of different product lines and modest changes to the algorithm code base.

Notable Changes

  • Updated processor and output definitions for CCI, C3S, AWI & CryoTEMPO
  • Improved TFMRA retracking for Envisat & ERS waveforms
  • New convention for handling C3S auxiliary data
  • Threshold-based surface type classification can be fully parametrized from L2 processor definition file

Full ChangelLog: shendric/pysiral@v0.9.5...v0.9.6

CCI CRDP v3.0-preview2 CryoSat-2/Envisat release

05 Nov 15:46
Compare
Choose a tag to compare

This primary focus of this release is gradual improvements and changes for the ESA CCI CRDP v3.0-preview2 release for the CryoSat-2 and Envisat data stream (All changes see can be found in the changelog.)

CryoSat-2 v2.3 Release (bugfix 4)

19 Oct 14:55
Compare
Choose a tag to compare
  • Fixed an issue were sea-level anomaly was not correctly masked

CryoSat-2 v2.3 Release (bugfix 3)

08 Oct 11:48
Compare
Choose a tag to compare
  • fixed issue with Level-2 output formats

CryoSat-2 v2.3 Release (bugfix 2)

08 Oct 10:09
Compare
Choose a tag to compare
  • fixed a few issues with the Level-2 pre-processor

CryoSat-2 v2.3 Release (bugfix 1)

08 Oct 08:48
Compare
Choose a tag to compare
  • added CryoSat-2 v2.3 l2p output definition

CryoSat-2 v2.3 Release

07 Oct 15:28
Compare
Choose a tag to compare

This release contains both code refactoring and algorithm updates. As alway, list of all changes can be found in the changelog.

Level-2 processor definition changes

A notable change has been made to the structure of the Level-2 processor definition files. The rigid set of algorithm steps has been replaced by a list of processor steps, which modify the Level-2 data object in-place. This allows more flexibility in the defining the Level-2 processor algorithm, but also breaks backward compability. Therefore only compatible Level-2 processor definition files remain in this release. If required older processor definition files have to be extracted from previous pysiral releases and updatet to the new format.

In addition, unit tests have been added to check the content of each Level-2 processor definition file and the metadata content has been changed and expanded.

CryoSat-2 v2.3

On the algorithm side, the AWI CryoSat-2 sea-ice algorithm has been updated to v2.3. This includes a list of changes and additions to different parts of pysiral, mainly:

  • Added option for daily scaling of snow depth climatology
  • Added snow density from Mallett et al., 2020
  • Added snow wave-speed correction from Mallett et al., 2020
  • Gap-filling of sea-ice type values where sea-ice concentration indicates the presence of sea ice. This mostly benefits sea-ice thickness in the Canadian Archipelago and near coasts

CCI+ v3p0-preview2

The first version of Level-2 processor definitions files have been added for the CCI CDR preview (v3p0-preview2). This are work in progress and subject to change. Besides algorithm updates described above, the following new features are implemented/developed:

  • ERS pulse-deblurring corrections
  • Gaussian process based sea-level anomaly estimator based on elevation covariances and noise level

Bugfixes

A major bug was fixed in the Level-1 pre-processor of the CryoSat-2 baseline-D data. The measurements confidence flag (mcd) in the L1b data was assumed to be zero for nominal waveforms. However, for SARin a warning is given, causing the mcd to be 128 for all waveforms. Previously, an mcd != 0 was assumed to be invalid waveforms and the retracker algorithm ignored the SARin data. This is now fixed.

Several, smaller less critical bugs have been fixed in the code and configuration files

Roadmap

The next release will feature all changes required for CCI+ v3p0-preview2. A major code refactoring can be expected until v1.0 as the organically grown module structure has lead to several cases of circular imports already. In addition, see tickets for #4, #14, #29, #45, #46

Python 3 release

24 Apr 15:48
7429d45
Compare
Choose a tag to compare

From this version onwards, pysiral only supports python 3 and support of pysiral for python 2 is discontinued. Functionality is currently only guaranteed with python 3.7 and test of further version will follow in later releases.

The conversion to python 3 is the main change of this release and this includes changes in dependancies, since especially the treedict package that has been used for configuration management had to be replaced. The refactoring was also used to remove obsolete code parts and improve the pysiral configuration management.

Specifically the following changes are included in v0.8.0:

Removed old Level-1 pre-processor

The Level-1 pre-processor module (l1bpreproc) and all associated code has been removed in pysiral v0.8. The modernized l1preproc module should be used for all developments and currently supports the most recent versions of ERS-1/2, Envisat, CryoSat-2 and Sentinel-3A/B

Configuration data as global variable

In the previous versions of pysiral, configuration data could be accessed with via pysiral.config.ConfigInfo(). This class was supposed to initialized during the code, causing the configuration files to be read often more than once. Now the configuration data is parsed and stored as a global variable (pysiral.psrlcfg) during the first import of pysiral. The content and functionaly has been expanded by dedicated classes instead of the previous configuration dictionary

Removed unused code

Several pysiral modules have been removed, as there are not longer used:

  • esa
  • io_adapter
  • icesat
  • l1bpreproc and all associated code in other sub-modules
  • legacy
  • maptools
  • orbit
  • path

Expanded unit tests

Though far from full code coverage, tests procedures have been added to test the pysiral configuration management

Feature release (Last python2.7 only release)

03 Apr 07:34
51e62f9
Compare
Choose a tag to compare

This is the last python2.7 release featuring new level-2 processor definitions for ERS-1/2 and minor changes and bugfixes (see changelog).