# # EXECUTABLE PROGRAM OrbitSwath2KML v2.3.5 # 26-MAY-2023 # # History # # Changes with respect OrbitSwath2KML v2.3.1 - 13-DEC-2021: # (internal releases v2.3.2, 2.3.3 and 2.3.4) Linked against EO CFI v4.24 (before EO CFI v4.20) Add TimeSpan tag to KML Add SZA constraint (1 or 2 orbit segments depending on MLST value) Add start/stop UTC to balloon in KML file EXTRA_DATA: Add Mean Local Solar Time [h] for each swath point EXTRA_DATA: Add Sunglint angle [deg] for each swath point (defined as angular separation between Sun Specular direction at ground point and Viewing direction) Note: EXTRA_DATA calculated for FULL orbit # # Changes with respect OrbitSwath2KML v2.3 - 11-MAY-2021: # Bug fix: when using STF as input swath file format, empty files were generated # # Changes with respect OrbitSwath2KML v2.2 - 15-FEB-2021: # Linked against EO CFI v4.20 (before EO CFI v4.15) Rename SENTINEL6 as SENTINEL6A Added CHIME, CIMR, CO2M, CRISTAL, FORUM, LSTM, ROSEL, TRUTHS Added the sub seconds to the input/output UTC times (YYYY-MM-DDTHH:MM:SS.UUUUUU instead of YYYY-MM-DDTHH:MM:SS) EXTRA_DATA: Calculate only the necessary outputs out of the target extra functions (to improve the runtime) # # v2.2 (15-FEB-2021) # Add DESC/FULL constraint Add SENTINEL1/SENTINEL2/SENTINEL3 C models, FLEX, GENERIC_MEO Add Sun-related info to output CSV (Sun Zenith Angle,Sun azimuth, eclipse flag) New function to initialize time_correlations in case orbit file does not have TAI-UTC # # v1.9 (08-JAN-2020) # Added to output CSV file (if EXTRA_DATA): - swath width - distance to ground-track of left-most and right-most swath points - topocentric satellite azimuth of each swath point # # Executable program linked against EO CFI SW libraries v4.24 # # Mission files (orbit, attitude, swath definition) for ESA EO missions can be found in http://eop-cfi.esa.int/Repo/PUBLIC/DOCUMENTATION/MISSION_DATA/ORBIT_SWATH_DATA/ # # EXECUTABLE PROGRAM OrbitSwath2KML # It displays the swath contour for a given orbit range or UTC time range # It creates as output a KML file and (optionally, if EXTRA_DATA mode selected) a CSV file with information for each swath point # # Usage: OrbitSwath2KML input_config_filename time_mode start_time stop_time time_step # # Example commands Windows 64-bit (from Terminal) # Example #1, SENTINEL2B with MSI swath with SZA<82 deg constraint, with ORBIT_RANGE OrbitSwath2KML.exe INPUT\input_config_file_S2B_MSI_SZA82deg.txt ORBIT_RANGE 20000 20015 10.0 # Example #2, SENTINEL2B with MSI swath with DESCENDING pass only, with TIME_RANGE OrbitSwath2KML.exe INPUT\input_config_file_S2B_MSI_DESC.txt TIME_RANGE 2021-01-03T00:00:00.000000 2021-01-05T00:00:00.000000 10.0 # Example #3, SENTINEL2B with ORBIT FULL swath, with ORBIT_RANGE OrbitSwath2KML.exe INPUT\input_config_file_S2B_ORBIT_FULL.txt ORBIT_RANGE 20000 20015 10.0 # Example #4, SENTINEL2B with ORBIT FULL swath, with TIME_RANGE OrbitSwath2KML.exe INPUT\input_config_file_S2B_ORBIT_FULL.txt TIME_RANGE 2021-01-03T00:00:00.000000 2021-01-05T00:00:00.000000 10.0 # # Example commands Mac OS X & Linux 64-bit (from Terminal) # Example #1, SENTINEL2B with MSI swath with SZA<82 deg constraint, with ORBIT_RANGE ./OrbitSwath2KML ./INPUT/input_config_file_S2B_MSI_SZA82deg.txt ORBIT_RANGE 20000 20015 10.0 # Example #2, SENTINEL2B with MSI swath with DESCENDING pass only, with TIME_RANGE ./OrbitSwath2KML ./INPUT/input_config_file_S2B_MSI_DESC.txt TIME_RANGE 2021-01-03T00:00:00.000000 2021-01-05T00:00:00.000000 10.0 # Example #3, SENTINEL2B with ORBIT swath, with ORBIT_RANGE ./OrbitSwath2KML ./INPUT/input_config_file_S2B_ORBIT_FULL.txt ORBIT_RANGE 20000 20015 10.0 # Example #4, SENTINEL2B with ORBIT FULL swath, with TIME_RANGE ./OrbitSwath2KML INPUT/input_config_file_S2B_ORBIT_FULL.txt TIME_RANGE 2021-01-03T00:00:00.000000 2021-01-05T00:00:00.000000 10.0 # # Inputs: # Input configuration file # Time Mode type (allowed values: ORBIT_RANGE, TIME_RANGE) ## If ORBIT_RANGE: Start/Stop Absolute Orbit Numbers ## If TIME_RANGE: Start/Stop Times are in UTC. Expected calendar CCSDS format (with microseconds): YYYY-MM-DDTHH:MM:SS.UUUUUU # Time Step between swath samples, in seconds (this value is used for the EXTRA_DATA. For KML output, the step between swath points along the orbit is set to the user time step. Note that 10.0 seconds is good trade-off between accuracy and file size) # # Output Files created MISSION_SWATH_XXXX_ZZZZ_YYYYMMDD_HHMMSS_YYYYMMDD_HHMMSS.KML If EXTRA_DATA mode selected: MISSION_SWATH_AUX_DATA_XXXXX_YYYYMMDD_HHMMSS_YYYYMMDD_HHMMSS.CSV # # Output of example command #1 SENTINEL2B_SWATH_MSI_DESC_20210103_153309_20210104_164339.KML # Outputs of example command #2 SENTINEL2B_SWATH_AUX_DATA_MSI_20210103_000000_20210105_000000.CSV SENTINEL2B_SWATH_MSI_DESC_20210103_000000_20210105_000000.KML # Outputs of example command #3 SENTINEL2B_SWATH_AUX_DATA_ORBIT_20210103_153309_20210104_164339.CSV SENTINEL2B_SWATH_ORBIT_FULL_20210103_153309_20210104_164339.KML # Outputs of example command #4 SENTINEL2B_SWATH_AUX_DATA_ORBIT_20210103_000000_20210105_000000.CSV SENTINEL2B_SWATH_ORBIT_FULL_20210103_000000_20210105_000000.KML # # Contents of Input Configuration File "input_config_file.txt" # # Satellite ID (allowed values: AEOLUS, BIOMASS, CHIME, CIMR, CO2M, CRISTAL, CRYOSAT2, EARTHCARE, FLEX, FORUM, LSTM, METOPSG, ROSEL, SENTINEL1A, SENTINEL1B, SENTINEL2A, SENTINEL2B, SENTINEL3A, SENTINEL3B, SENTINEL5P, SENTINEL6A, SEOSAT, SMOS, SWARM_A, SWARM_B, SWARM_C, TRUTHS, GENERIC, GENERIC_MEO, GENERIC_GEO or DEFAULT (DEFAULT requires satellite configuration file sat_default_conf_file.xml) Orbit Scenario Filename (type: MPL_ORBSCT or MPL_ORBPRE, AUX_ORBRES) Swath Filename (type: Swath Definition File or Swath Template File) Swath Identifier (user defined label, e.g. MSI or ORBIT) Swath Color (aabbggrr, aa=alpha, bb=blue, gg=green rr=red, with ranges 00 to ff) Extra Data selection (allowed values: EXTRA_DATA, NO_EXTRA_DATA) —> It generates an additional file with data associated to swath points (longitude and latitude, line-of-sight azimuth and elevation, observation zenith angle , topocentric azimuth and range, Sun zenith angle, Sun azimuth angle and eclipse flag) Pass Constraint (allowed values: FULL, DESC, SZA) --> Full orbit, descending pass only or Sun Zenith Angle constraint (below given value) Maximum Sun Zenith Angle value [deg] --> Only used if SZA option set in previous row # Notes: # Due to the characteristics of the orbit propagation method used with ORBSCT orbit file, the evolution of the OZA, the range between the satellite and the swath points and the SC altitude do not change from one orbit to the next (repeat as a function of seconds since ANX)