Sentinel-1 GRD DEM-Assisted-Coregistration

Hello! I am working on a Python script that uses the esa_snappy plugin to process a time series of Sentinel-1 GRD images. First, each image is individually preprocessed by applying the following operators:

  1. Thermal Noise Removal
  2. Apply Orbit File
  3. Calibration
  4. Subset

After preprocessing, I would like to coregister all the images using the DEM-Assisted-Coregistration operator. Here is a snippet of my code, where preprocessed_products contains all the products after the preprocessing steps described above:

source_array = jpy.array(‘org.esa.snap.core.datamodel.Product’, len(preprocessed_products))

for idx, p in enumerate(preprocessed_products):
    source_array[idx] = p

parameters = HashMap()
parameters.put('demName', 'Copernicus 30m Global DEM')
parameters.put('demResamplingMethod', 'BILINEAR_INTERPOLATION')
parameters.put('resamplingType', 'BILINEAR_INTERPOLATION')
parameters.put('maskOutAreaWithoutElevation', 'false')

stack_product = GPF.createProduct('DEM-Assisted-Coregistration', parameters, source_array)

At this point, I am facing two issues.

  1. Master image selection: the master image is not the first image in the time series, even though I have verified that all products are sorted chronologically before being passed to the coregistration operator.
  2. Slave image ordering: the slave images are also not ordered chronologically. For example, the output bands are named as follows (the same applies for VH):
Sigma0_VV_mst_12Jul2024
Sigma0_VV_slv1_24Jul2024
Sigma0_VV_slv2_06Jun2024
Sigma0_VV_slv3_18Jun2024
Sigma0_VV_slv4_13May2024
Sigma0_VV_slv5_25May2024
Sigma0_VV_slv6_07Apr2024
Sigma0_VV_slv7_19Apr2024
Sigma0_VV_slv8_01May2024

Is this the expected behavior of the DEM-Assisted-Coregistration operator? If so, how does SNAP determine the master image and the ordering of the slave images?

Finally, after coregistration, I apply Multi-look followed by Terrain Correction.

Thank you in advance for your help.