geode-gnss 1.2.48__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. geode_gnss-1.2.48/.git_archival.txt +3 -0
  2. geode_gnss-1.2.48/.gitattributes +1 -0
  3. geode_gnss-1.2.48/.github/ISSUE_TEMPLATE/bug_report.yml +116 -0
  4. geode_gnss-1.2.48/.github/workflows/publish.yml +67 -0
  5. geode_gnss-1.2.48/.github/workflows/python-package-conda.yml +45 -0
  6. geode_gnss-1.2.48/.gitignore +111 -0
  7. geode_gnss-1.2.48/CITATION.cff +10 -0
  8. geode_gnss-1.2.48/GeoDE_User_Manual.md +3518 -0
  9. geode_gnss-1.2.48/INSTALL.md +73 -0
  10. geode_gnss-1.2.48/LICENSE +28 -0
  11. geode_gnss-1.2.48/MANIFEST.in +1 -0
  12. geode_gnss-1.2.48/PKG-INFO +228 -0
  13. geode_gnss-1.2.48/README.md +150 -0
  14. geode_gnss-1.2.48/com/AlterETM.py +250 -0
  15. geode_gnss-1.2.48/com/ApplyCountryCode.py +51 -0
  16. geode_gnss-1.2.48/com/ArchiveService.py +1067 -0
  17. geode_gnss-1.2.48/com/CloseStationInfo.py +79 -0
  18. geode_gnss-1.2.48/com/ConvertDate.py +34 -0
  19. geode_gnss-1.2.48/com/ConvertTrimble.py +70 -0
  20. geode_gnss-1.2.48/com/CreateEtmFunctions.py +203 -0
  21. geode_gnss-1.2.48/com/DRA.py +484 -0
  22. geode_gnss-1.2.48/com/DownloadSources.py +1559 -0
  23. geode_gnss-1.2.48/com/DownloadSourcesFill.py +337 -0
  24. geode_gnss-1.2.48/com/EtmStacker.py +891 -0
  25. geode_gnss-1.2.48/com/FixPlate.py +558 -0
  26. geode_gnss-1.2.48/com/GenerateKml.py +578 -0
  27. geode_gnss-1.2.48/com/GenerateSinex.py +131 -0
  28. geode_gnss-1.2.48/com/IntegrityCheck.py +1132 -0
  29. geode_gnss-1.2.48/com/LocateRinex.py +334 -0
  30. geode_gnss-1.2.48/com/ModelProcessing.py +347 -0
  31. geode_gnss-1.2.48/com/NEQStack.py +240 -0
  32. geode_gnss-1.2.48/com/OTL_FES2014b.py +178 -0
  33. geode_gnss-1.2.48/com/ParallelGamit.py +804 -0
  34. geode_gnss-1.2.48/com/PlotETM.py +691 -0
  35. geode_gnss-1.2.48/com/PlotMapView.py +375 -0
  36. geode_gnss-1.2.48/com/QueryETM.py +170 -0
  37. geode_gnss-1.2.48/com/ReadPackage.py +90 -0
  38. geode_gnss-1.2.48/com/S-score.py +94 -0
  39. geode_gnss-1.2.48/com/ScanArchive.py +1430 -0
  40. geode_gnss-1.2.48/com/Stacker.py +431 -0
  41. geode_gnss-1.2.48/com/StationInfoEdit.py +524 -0
  42. geode_gnss-1.2.48/com/SyncOrbits.py +244 -0
  43. geode_gnss-1.2.48/com/TrajectoryFit.py +466 -0
  44. geode_gnss-1.2.48/com/UpdateEarthquakes.py +188 -0
  45. geode_gnss-1.2.48/com/WeeklyCombination.py +423 -0
  46. geode_gnss-1.2.48/com/Ztd2trp.py +138 -0
  47. geode_gnss-1.2.48/com/__init__.py +0 -0
  48. geode_gnss-1.2.48/configuration_files/gnss_data.cfg +50 -0
  49. geode_gnss-1.2.48/configuration_files/process.defaults +108 -0
  50. geode_gnss-1.2.48/configuration_files/sestbl. +156 -0
  51. geode_gnss-1.2.48/database/gnss_data_dump.sql +2472 -0
  52. geode_gnss-1.2.48/database/postgres_schema/postgresql-42.1.3.jar +0 -0
  53. geode_gnss-1.2.48/database/postgres_schema/postgresql-9.3-1103.jdbc3.jar +0 -0
  54. geode_gnss-1.2.48/database/postgres_schema/relationships.real.large.png +0 -0
  55. geode_gnss-1.2.48/database/postgres_schema/rinex.2degrees.png +0 -0
  56. geode_gnss-1.2.48/database/postgres_schema/schemaSpy_5.0.0.jar +0 -0
  57. geode_gnss-1.2.48/database/postgres_schema/schemaspy/anomalies.html +134 -0
  58. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byAuto.html +1426 -0
  59. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byColumn.html +1426 -0
  60. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byDefault.html +1426 -0
  61. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byNulls.html +1426 -0
  62. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.bySize.html +1426 -0
  63. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byTable.html +1426 -0
  64. geode_gnss-1.2.48/database/postgres_schema/schemaspy/columns.byType.html +1426 -0
  65. geode_gnss-1.2.48/database/postgres_schema/schemaspy/constraints.html +179 -0
  66. geode_gnss-1.2.48/database/postgres_schema/schemaspy/deletionOrder.txt +16 -0
  67. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/antennas.1degree.dot +58 -0
  68. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/antennas.1degree.png +0 -0
  69. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/antennas.2degrees.dot +81 -0
  70. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/antennas.2degrees.png +0 -0
  71. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/apr_coords.1degree.dot +66 -0
  72. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/apr_coords.1degree.png +0 -0
  73. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/apr_coords.2degrees.dot +169 -0
  74. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/apr_coords.2degrees.png +0 -0
  75. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/gamit_soln.1degree.dot +103 -0
  76. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/gamit_soln.1degree.png +0 -0
  77. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/gamit_soln.2degrees.dot +190 -0
  78. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/gamit_soln.2degrees.png +0 -0
  79. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/keys.1degree.dot +48 -0
  80. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/keys.1degree.png +0 -0
  81. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/locks.1degree.dot +57 -0
  82. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/locks.1degree.png +0 -0
  83. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/locks.2degrees.dot +160 -0
  84. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/locks.2degrees.png +0 -0
  85. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/networks.1degree.dot +55 -0
  86. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/networks.1degree.png +0 -0
  87. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/networks.2degrees.dot +159 -0
  88. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/networks.2degrees.png +0 -0
  89. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln.1degree.dot +101 -0
  90. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln.1degree.png +0 -0
  91. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln.2degrees.dot +188 -0
  92. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln.2degrees.png +0 -0
  93. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln_excl.1degree.dot +58 -0
  94. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln_excl.1degree.png +0 -0
  95. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln_excl.2degrees.dot +161 -0
  96. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/ppp_soln_excl.2degrees.png +0 -0
  97. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/receivers.1degree.dot +58 -0
  98. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/receivers.1degree.png +0 -0
  99. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/receivers.2degrees.dot +81 -0
  100. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/receivers.2degrees.png +0 -0
  101. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex.1degree.dot +132 -0
  102. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex.1degree.png +0 -0
  103. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex.2degrees.dot +203 -0
  104. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex.2degrees.png +0 -0
  105. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_extra.1degree.dot +72 -0
  106. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_extra.1degree.png +0 -0
  107. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_extra.2degrees.dot +175 -0
  108. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_extra.2degrees.png +0 -0
  109. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_tank_struct.1degree.dot +48 -0
  110. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/rinex_tank_struct.1degree.png +0 -0
  111. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stationinfo.1degree.dot +93 -0
  112. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stationinfo.1degree.png +0 -0
  113. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stationinfo.2degrees.dot +196 -0
  114. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stationinfo.2degrees.png +0 -0
  115. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stations.1degree.dot +251 -0
  116. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stations.1degree.png +0 -0
  117. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stations.2degrees.dot +273 -0
  118. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/stations.2degrees.png +0 -0
  119. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/earthquakes.1degree.dot +34 -0
  120. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/earthquakes.1degree.png +0 -0
  121. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/events.1degree.dot +33 -0
  122. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/events.1degree.png +0 -0
  123. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/relationships.real.compact.dot +231 -0
  124. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/relationships.real.compact.png +0 -0
  125. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/relationships.real.large.dot +301 -0
  126. geode_gnss-1.2.48/database/postgres_schema/schemaspy/diagrams/summary/relationships.real.large.png +0 -0
  127. geode_gnss-1.2.48/database/postgres_schema/schemaspy/gnss_data.public.xml +301 -0
  128. geode_gnss-1.2.48/database/postgres_schema/schemaspy/images/background.gif +0 -0
  129. geode_gnss-1.2.48/database/postgres_schema/schemaspy/images/tabLeft.gif +0 -0
  130. geode_gnss-1.2.48/database/postgres_schema/schemaspy/images/tabRight.gif +0 -0
  131. geode_gnss-1.2.48/database/postgres_schema/schemaspy/index.html +227 -0
  132. geode_gnss-1.2.48/database/postgres_schema/schemaspy/insertionOrder.txt +16 -0
  133. geode_gnss-1.2.48/database/postgres_schema/schemaspy/jquery.js +154 -0
  134. geode_gnss-1.2.48/database/postgres_schema/schemaspy/relationships.html +102 -0
  135. geode_gnss-1.2.48/database/postgres_schema/schemaspy/schemaSpy.css +277 -0
  136. geode_gnss-1.2.48/database/postgres_schema/schemaspy/schemaSpy.js +97 -0
  137. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/antennas.html +140 -0
  138. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/apr_coords.html +265 -0
  139. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/earthquakes.html +147 -0
  140. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/events.html +136 -0
  141. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/gamit_soln.html +340 -0
  142. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/keys.html +163 -0
  143. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/locks.html +166 -0
  144. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/networks.html +146 -0
  145. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/ppp_soln.html +318 -0
  146. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/ppp_soln_excl.html +177 -0
  147. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/receivers.html +140 -0
  148. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/rinex.html +393 -0
  149. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/rinex_extra.html +331 -0
  150. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/rinex_tank_struct.html +130 -0
  151. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/stationinfo.html +320 -0
  152. geode_gnss-1.2.48/database/postgres_schema/schemaspy/tables/stations.html +368 -0
  153. geode_gnss-1.2.48/database/postgres_schema/schemaspy/utilities.html +69 -0
  154. geode_gnss-1.2.48/database/postgres_schema/stationinfo.1degree.png +0 -0
  155. geode_gnss-1.2.48/docs/FindArgparseInModules.py +76 -0
  156. geode_gnss-1.2.48/docs/Makefile +20 -0
  157. geode_gnss-1.2.48/docs/com.rst +425 -0
  158. geode_gnss-1.2.48/docs/conf.py +37 -0
  159. geode_gnss-1.2.48/docs/index.rst +59 -0
  160. geode_gnss-1.2.48/docs/make.bat +35 -0
  161. geode_gnss-1.2.48/docs/modules.rst +8 -0
  162. geode_gnss-1.2.48/docs/parallelgamit.pdf +0 -0
  163. geode_gnss-1.2.48/docs/pgamit.rst +325 -0
  164. geode_gnss-1.2.48/docs/pgamit.tests.rst +29 -0
  165. geode_gnss-1.2.48/environment.yml +33 -0
  166. geode_gnss-1.2.48/geode/ConvertRaw.py +201 -0
  167. geode_gnss-1.2.48/geode/Utils.py +1286 -0
  168. geode_gnss-1.2.48/geode/__init__.py +52 -0
  169. geode_gnss-1.2.48/geode/agglomerative.py +365 -0
  170. geode_gnss-1.2.48/geode/cluster.py +665 -0
  171. geode_gnss-1.2.48/geode/dbConnection.py +559 -0
  172. geode_gnss-1.2.48/geode/elasticity/DLN_func.py +1168 -0
  173. geode_gnss-1.2.48/geode/elasticity/__init__.py +5 -0
  174. geode_gnss-1.2.48/geode/elasticity/data/EarthCore.txt +25 -0
  175. geode_gnss-1.2.48/geode/elasticity/data/EarthMantle56.txt +57 -0
  176. geode_gnss-1.2.48/geode/elasticity/data/PB2002_plates.json +113 -0
  177. geode_gnss-1.2.48/geode/elasticity/data/REF_6371_loading_love_numbers_0_40000.txt +40002 -0
  178. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.README.html +391 -0
  179. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.VERSION.txt +1 -0
  180. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.cpg +1 -0
  181. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.dbf +0 -0
  182. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.prj +1 -0
  183. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.shp +0 -0
  184. geode_gnss-1.2.48/geode/elasticity/data/ne_50m_land.shx +0 -0
  185. geode_gnss-1.2.48/geode/elasticity/diskload.py +600 -0
  186. geode_gnss-1.2.48/geode/elasticity/elastic_gridder.py +826 -0
  187. geode_gnss-1.2.48/geode/elasticity/elastic_interpolation.py +440 -0
  188. geode_gnss-1.2.48/geode/elasticity/green_func.py +434 -0
  189. geode_gnss-1.2.48/geode/elasticity/rectloadhs.py +601 -0
  190. geode_gnss-1.2.48/geode/etm/__init__.py +0 -0
  191. geode_gnss-1.2.48/geode/etm/core/__init__.py +0 -0
  192. geode_gnss-1.2.48/geode/etm/core/data_classes.py +379 -0
  193. geode_gnss-1.2.48/geode/etm/core/etm_config.py +377 -0
  194. geode_gnss-1.2.48/geode/etm/core/etm_engine.py +611 -0
  195. geode_gnss-1.2.48/geode/etm/core/etm_stacker.py +3196 -0
  196. geode_gnss-1.2.48/geode/etm/core/etm_stacker_vce.py +955 -0
  197. geode_gnss-1.2.48/geode/etm/core/jump_manager.py +311 -0
  198. geode_gnss-1.2.48/geode/etm/core/logging_config.py +22 -0
  199. geode_gnss-1.2.48/geode/etm/core/s_score.py +158 -0
  200. geode_gnss-1.2.48/geode/etm/core/type_declarations.py +170 -0
  201. geode_gnss-1.2.48/geode/etm/data/__init__.py +0 -0
  202. geode_gnss-1.2.48/geode/etm/data/etm_database.py +143 -0
  203. geode_gnss-1.2.48/geode/etm/data/solution_data.py +704 -0
  204. geode_gnss-1.2.48/geode/etm/etm_functions/__init__.py +0 -0
  205. geode_gnss-1.2.48/geode/etm/etm_functions/auto_jumps.py +182 -0
  206. geode_gnss-1.2.48/geode/etm/etm_functions/etm_function.py +165 -0
  207. geode_gnss-1.2.48/geode/etm/etm_functions/jumps.py +522 -0
  208. geode_gnss-1.2.48/geode/etm/etm_functions/periodic.py +183 -0
  209. geode_gnss-1.2.48/geode/etm/etm_functions/polynomial.py +133 -0
  210. geode_gnss-1.2.48/geode/etm/etm_functions/stochastic_signal.py +76 -0
  211. geode_gnss-1.2.48/geode/etm/least_squares/__init__.py +0 -0
  212. geode_gnss-1.2.48/geode/etm/least_squares/design_matrix.py +258 -0
  213. geode_gnss-1.2.48/geode/etm/least_squares/least_squares.py +880 -0
  214. geode_gnss-1.2.48/geode/etm/least_squares/ls_collocation.py +62 -0
  215. geode_gnss-1.2.48/geode/etm/least_squares/sva.py +202 -0
  216. geode_gnss-1.2.48/geode/etm/test.py +132 -0
  217. geode_gnss-1.2.48/geode/etm/visualization/__init__.py +0 -0
  218. geode_gnss-1.2.48/geode/etm/visualization/data_classes.py +106 -0
  219. geode_gnss-1.2.48/geode/etm/visualization/data_prep.py +230 -0
  220. geode_gnss-1.2.48/geode/etm/visualization/etm_plotting.py +296 -0
  221. geode_gnss-1.2.48/geode/etm/visualization/histogram_template.py +156 -0
  222. geode_gnss-1.2.48/geode/etm/visualization/plot_fields.py +616 -0
  223. geode_gnss-1.2.48/geode/etm/visualization/time_series_template.py +245 -0
  224. geode_gnss-1.2.48/geode/gamit/__init__.py +0 -0
  225. geode_gnss-1.2.48/geode/gamit/gamit_config.py +117 -0
  226. geode_gnss-1.2.48/geode/gamit/gamit_session.py +461 -0
  227. geode_gnss-1.2.48/geode/gamit/gamit_task.py +808 -0
  228. geode_gnss-1.2.48/geode/gamit/globk_task.py +229 -0
  229. geode_gnss-1.2.48/geode/gamit/parse_ztd.py +126 -0
  230. geode_gnss-1.2.48/geode/gamit/station.py +481 -0
  231. geode_gnss-1.2.48/geode/gamit/ztd.py +230 -0
  232. geode_gnss-1.2.48/geode/metadata/__init__.py +0 -0
  233. geode_gnss-1.2.48/geode/metadata/igslog.py +478 -0
  234. geode_gnss-1.2.48/geode/metadata/station_info.py +1181 -0
  235. geode_gnss-1.2.48/geode/network.py +402 -0
  236. geode_gnss-1.2.48/geode/plots.py +181 -0
  237. geode_gnss-1.2.48/geode/proto_download.py +483 -0
  238. geode_gnss-1.2.48/geode/pyArchiveStruct.py +460 -0
  239. geode_gnss-1.2.48/geode/pyBunch.py +408 -0
  240. geode_gnss-1.2.48/geode/pyDate.py +501 -0
  241. geode_gnss-1.2.48/geode/pyETM.py +3553 -0
  242. geode_gnss-1.2.48/geode/pyEvents.py +78 -0
  243. geode_gnss-1.2.48/geode/pyJobServer.py +581 -0
  244. geode_gnss-1.2.48/geode/pyLeastSquares.py +90 -0
  245. geode_gnss-1.2.48/geode/pyOTL.py +105 -0
  246. geode_gnss-1.2.48/geode/pyOkada.py +783 -0
  247. geode_gnss-1.2.48/geode/pyOptions.py +124 -0
  248. geode_gnss-1.2.48/geode/pyPPP.py +767 -0
  249. geode_gnss-1.2.48/geode/pyParseAntex.py +26 -0
  250. geode_gnss-1.2.48/geode/pyProducts.py +344 -0
  251. geode_gnss-1.2.48/geode/pyRinex.py +1593 -0
  252. geode_gnss-1.2.48/geode/pyRinexName.py +235 -0
  253. geode_gnss-1.2.48/geode/pyRunWithRetry.py +146 -0
  254. geode_gnss-1.2.48/geode/pyStack.py +1097 -0
  255. geode_gnss-1.2.48/geode/pyStatic1d.py +36 -0
  256. geode_gnss-1.2.48/geode/snxParse.py +672 -0
  257. geode_gnss-1.2.48/geode/station_selector.py +335 -0
  258. geode_gnss-1.2.48/geode/tests/__init__.py +0 -0
  259. geode_gnss-1.2.48/geode/tests/common.py +52 -0
  260. geode_gnss-1.2.48/geode/tests/test_make_clusters.py +69 -0
  261. geode_gnss-1.2.48/geode/tests/test_station_info.py +435 -0
  262. geode_gnss-1.2.48/geode/tests/test_version.py +8 -0
  263. geode_gnss-1.2.48/geode_gnss.egg-info/PKG-INFO +228 -0
  264. geode_gnss-1.2.48/geode_gnss.egg-info/SOURCES.txt +314 -0
  265. geode_gnss-1.2.48/geode_gnss.egg-info/dependency_links.txt +1 -0
  266. geode_gnss-1.2.48/geode_gnss.egg-info/requires.txt +32 -0
  267. geode_gnss-1.2.48/geode_gnss.egg-info/top_level.txt +1 -0
  268. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-02-Black.png +0 -0
  269. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-03-Black.png +0 -0
  270. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-04-Black.png +0 -0
  271. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-05-Black.png +0 -0
  272. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-06-Black.png +0 -0
  273. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-07-Black.png +0 -0
  274. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-08-Black.png +0 -0
  275. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-09-White.png +0 -0
  276. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-10-White.png +0 -0
  277. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-11-White.png +0 -0
  278. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-12-White.png +0 -0
  279. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-13-White.png +0 -0
  280. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-14-White.png +0 -0
  281. geode_gnss-1.2.48/logos/Highres-GeoDe-Logo-final-15-White.png +0 -0
  282. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-02-Black.png +0 -0
  283. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-03-Black.png +0 -0
  284. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-04-Black.png +0 -0
  285. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-05-Black.png +0 -0
  286. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-06-Black.png +0 -0
  287. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-07-Black.png +0 -0
  288. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-08-Black.png +0 -0
  289. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-09-White.png +0 -0
  290. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-10-White.png +0 -0
  291. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-11-White.png +0 -0
  292. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-12-White.png +0 -0
  293. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-13-White.png +0 -0
  294. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-14-White.png +0 -0
  295. geode_gnss-1.2.48/logos/Lowres-GeoDe-Logo-final-15-White.png +0 -0
  296. geode_gnss-1.2.48/pyproject.toml +69 -0
  297. geode_gnss-1.2.48/scripts/ck_rinex_sizes.sh +83 -0
  298. geode_gnss-1.2.48/scripts/crz2rnx +143 -0
  299. geode_gnss-1.2.48/scripts/find_station_duplicates.sql +4 -0
  300. geode_gnss-1.2.48/scripts/format_scripts/chile.py +13 -0
  301. geode_gnss-1.2.48/scripts/format_scripts/ibge.py +7 -0
  302. geode_gnss-1.2.48/scripts/format_scripts/igac.py +14 -0
  303. geode_gnss-1.2.48/scripts/format_scripts/rnx2crz.py +8 -0
  304. geode_gnss-1.2.48/scripts/format_scripts/trimble.py +12 -0
  305. geode_gnss-1.2.48/scripts/format_scripts/uruguay.py +7 -0
  306. geode_gnss-1.2.48/scripts/insert_stninfo.sh +14 -0
  307. geode_gnss-1.2.48/scripts/install.sh +27 -0
  308. geode_gnss-1.2.48/scripts/monitor_dispynode.sh +16 -0
  309. geode_gnss-1.2.48/scripts/rename_crinex.sh +26 -0
  310. geode_gnss-1.2.48/scripts/rename_crinex2lower.sh +20 -0
  311. geode_gnss-1.2.48/scripts/rename_with_logs.sh +24 -0
  312. geode_gnss-1.2.48/scripts/rnx2crz +144 -0
  313. geode_gnss-1.2.48/scripts/setup.sh +25 -0
  314. geode_gnss-1.2.48/scripts/submit_task_SLURM.sh +99 -0
  315. geode_gnss-1.2.48/setup.cfg +4 -0
  316. geode_gnss-1.2.48/setup.py +58 -0
@@ -0,0 +1,3 @@
1
+ node: $Format:%H$
2
+ node-date: $Format:%cI$
3
+ describe-name: $Format:%(describe:tags=true,match=*[0-9]*)$
@@ -0,0 +1 @@
1
+ .git_archival.txt export-subst
@@ -0,0 +1,116 @@
1
+ name: Bug Report
2
+ description: Create a report to help us reproduce and correct the bug
3
+ labels: ['Bug', 'Needs Triage']
4
+
5
+ body:
6
+ - type: markdown
7
+ attributes:
8
+ value: >
9
+ #### Before submitting a bug, please make sure the issue hasn't been already
10
+ addressed by searching through [the past issues](https://github.com/demiangomez/Parallel.GAMIT/issues).
11
+ - type: textarea
12
+ attributes:
13
+ label: Describe the bug
14
+ description: >
15
+ A clear and concise description of what the bug is.
16
+ validations:
17
+ required: true
18
+ - type: textarea
19
+ attributes:
20
+ label: Steps/Code to Reproduce
21
+ description: |
22
+ Please add a [minimal reproducible example](https://en.wikipedia.org/wiki/Minimal_reproducible_example) that can reproduce the error when running it. Be as succinct as possible, and include the input data that produces the bug. **Do not depend on access to postgres database**: instead you can export the input data, either as csv file using pgAdmin, or using pandas to export the relevant data. Example using pandas:
23
+
24
+ ```python
25
+ import psycopg2
26
+ import pandas as pd
27
+ from sqlalchemy import create_engine
28
+
29
+ ## database credentials
30
+ CREDS = {
31
+ "host": "<HOSTNAME>",
32
+ "user": "<USERNAME>",
33
+ "port": 5432,
34
+ "dbname": "<DBNAME>",
35
+ "password": "<PASSWORD>"
36
+ }
37
+ CONNECTION_STRING = " ".join((f"{k}={v}" for k,v in CREDS.items()))
38
+ ENGINE = create_engine(
39
+ "postgresql+psycopg2://{user}:{password}@{host}:{port}/{dbname}".format(**CREDS)
40
+ )
41
+
42
+ # Getting data, modify this query as needed
43
+ query = "SELECT * FROM public.gamit where 'year'='2024' and 'doy'='044'"
44
+
45
+ df = pd.read_sql(query, ENGINE)
46
+ # Modify to your output path
47
+ df.to_csv("/filesystem/path.csv"
48
+
49
+ ```
50
+
51
+ Github allows you to drag the .csv file into the text box as an attachment that we can download later. If the results are short, you can also copy paste, or feel free to put it in a public gist and link it in the issue: https://gist.github.com.
52
+
53
+ In short, **we are going to run the data on just the code that is throwing the error** and we expect to get the same result as you.
54
+
55
+ We acknowledge that crafting a **minimal reproducible code example** requires some effort on your side but it really helps the maintainers quickly reproduce the problem and analyze its cause without any ambiguity. Ambiguous bug reports tend to be slower to fix because they will require more effort and back and forth discussion between the maintainers and the reporter to pin-point the precise conditions necessary to reproduce the problem.
56
+ placeholder: |
57
+ ```
58
+ Sample code to reproduce the problem
59
+ ```
60
+ validations:
61
+ required: true
62
+ - type: textarea
63
+ attributes:
64
+ label: Expected Results
65
+ description: >
66
+ Please paste or describe the expected results.
67
+ placeholder: >
68
+ Example: No error is thrown.
69
+ validations:
70
+ required: true
71
+ - type: textarea
72
+ attributes:
73
+ label: Actual Results
74
+ description: |
75
+ Please paste or describe the results you observe instead of the expected results. If you observe an error, please paste the error message including the **full traceback** of the exception, **and the final print statement from geode**. For example:
76
+
77
+ ```python-traceback
78
+ ---------------------------------------------------------------------------
79
+ 2024-10-21 09:08:16 g2global 2024 041 -> Creating network clusters
80
+ -- Processing type is global with 731 active stations
81
+ Traceback (most recent call last):
82
+ File "/fs/project/gomez.124/opt/conda/geode/bin/ParallelGamit.py", line 756, in
83
+ main()
84
+ File "/fs/project/gomez.124/opt/conda/geode/bin/ParallelGamit.py", line 399, in main
85
+ sessions = ExecuteGamit(cnn, JobServer, GamitConfig, stations, check_stations, args.ignore_missing, dates,
86
+ File "/fs/project/gomez.124/opt/conda/geode/bin/ParallelGamit.py", line 700, in ExecuteGamit
87
+ net_object = Network(cnn, archive, GamitConfig, stations, date, check_stations, ignore_missing)
88
+ File "/fs/project/gomez.124/opt/conda/geode/lib/python3.10/site-packages/geode/network.py", line 176, in init
89
+ self.sessions = self.create_gamit_sessions(cnn, archive, clusters,
90
+ File "/fs/project/gomez.124/opt/conda/geode/lib/python3.10/site-packages/geode/network.py", line 382, in create_gamit_sessions
91
+ sessions.append(GamitSession(cnn, archive, self.name, self.org,
92
+ File "/fs/project/gomez.124/opt/conda/geode/lib/python3.10/site-packages/geode/pyGamitSession.py", line 72, in init
93
+ stations_.append(stn for stn in stations if stn not in ties)
94
+ File "/fs/project/gomez.124/opt/conda/geode/lib/python3.10/site-packages/geode/pyStation.py", line 299, in append
95
+ raise pyStationException('type: ' + str(type(station)) +
96
+ geode.pyStation.pyStationException: type: <class 'generator'> invalid. Can only append Station objects or lists of Station objects
97
+ ```
98
+ placeholder: >
99
+ Please paste or specifically describe the actual output or traceback.
100
+ validations:
101
+ required: true
102
+ - type: textarea
103
+ attributes:
104
+ label: Versions
105
+ render: shell
106
+ description: |
107
+ If you built geode from the git repo, please provide the commit hash of your build; if you installed geode via pip, run the following and paste the output below.
108
+ ```python
109
+ import geode; geode.__version__
110
+ ```
111
+ validations:
112
+ required: true
113
+ - type: markdown
114
+ attributes:
115
+ value: >
116
+ Thanks for contributing 🎉!
@@ -0,0 +1,67 @@
1
+ name: Publish
2
+ on:
3
+ push:
4
+ tags:
5
+ - "1.*"
6
+ jobs:
7
+ build:
8
+ name: Build distribution 📦
9
+ runs-on: ubuntu-latest
10
+
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+ with:
14
+ fetch-depth: 0 # ← Add here (in the build job)
15
+ - name: Set up Python
16
+ uses: actions/setup-python@v5
17
+ with:
18
+ python-version: "3.10"
19
+ - name: Install pypa/build
20
+ run: python3 -m pip install build --user
21
+ - name: Build a binary wheel and a source tarball
22
+ run: python3 -m build
23
+ - name: Store the distribution packages
24
+ uses: actions/upload-artifact@v4
25
+ with:
26
+ name: python-package-distributions
27
+ path: dist/
28
+
29
+ publish-to-pypi:
30
+ if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
31
+ name: Publish Python 🐍 distribution 📦 to PyPI
32
+ needs:
33
+ - build
34
+ runs-on: ubuntu-latest
35
+
36
+ environment:
37
+ name: pypi
38
+ url: https://pypi.org/p/geode-gnss
39
+
40
+ permissions:
41
+ id-token: write
42
+
43
+ steps:
44
+ - name: Download all the dists
45
+ uses: actions/download-artifact@v4
46
+ with:
47
+ name: python-package-distributions
48
+ path: dist/
49
+ - name: Publish distribution 📦 to PyPI
50
+ uses: pypa/gh-action-pypi-publish@release/v1
51
+
52
+ github-release:
53
+ name: Create GitHub Release with source code
54
+ needs:
55
+ - publish-to-pypi
56
+ runs-on: ubuntu-latest
57
+
58
+ permissions:
59
+ contents: write
60
+
61
+ steps:
62
+ - name: Checkout code
63
+ uses: actions/checkout@v4
64
+ - name: Create GitHub Release
65
+ env:
66
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
67
+ run: gh release create '${{ github.ref_name }}' --repo '${{ github.repository }}' --notes "Release for version ${{ github.ref_name }}"
@@ -0,0 +1,45 @@
1
+ name: Python Package using Conda
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - 'master'
7
+ - 'releases/**'
8
+ pull_request_target:
9
+ types: [assigned, opened, synchronize, reopened]
10
+
11
+ jobs:
12
+ build-linux:
13
+ runs-on: ubuntu-latest
14
+ strategy:
15
+ max-parallel: 5
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - name: Set up Python 3.10
20
+ uses: actions/setup-python@v3
21
+ with:
22
+ python-version: '3.10'
23
+ - name: Add conda to system path
24
+ run: |
25
+ # $CONDA is an environment variable pointing to the root of the miniconda directory
26
+ echo $CONDA/bin >> $GITHUB_PATH
27
+ - name: Install dependencies
28
+ run: |
29
+ conda env update --file environment.yml --name base
30
+ - name: Lint with flake8
31
+ run: |
32
+ conda install flake8
33
+ # stop the build if there are Python syntax errors or undefined names
34
+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
35
+ # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
36
+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
37
+ - name: Test with pytest
38
+ run: |
39
+ conda install pytest
40
+ pytest
41
+ - name: Coverage
42
+ run: |
43
+ conda install coverage
44
+ coverage run -m pytest
45
+ coverage report -m
@@ -0,0 +1,111 @@
1
+ # Automated versioning files
2
+ _version.py
3
+
4
+ # JetBrains IDE files
5
+ .idea/
6
+
7
+ # Byte-compiled / optimized / DLL files
8
+ __pycache__/
9
+ *.py[cod]
10
+ *$py.class
11
+
12
+ # C extensions
13
+ *.so
14
+
15
+ # Distribution / packaging
16
+ .Python
17
+ env/
18
+ build/
19
+ develop-eggs/
20
+ dist/
21
+ downloads/
22
+ eggs/
23
+ .eggs/
24
+ lib/
25
+ lib64/
26
+ parts/
27
+ sdist/
28
+ var/
29
+ *.egg-info/
30
+ .installed.cfg
31
+ *.egg
32
+
33
+ # PyInstaller
34
+ # Usually these files are written by a python script from a template
35
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
36
+ *.manifest
37
+ *.spec
38
+
39
+ # Installer logs
40
+ pip-log.txt
41
+ pip-delete-this-directory.txt
42
+
43
+ # Unit test / coverage reports
44
+ htmlcov/
45
+ .tox/
46
+ .coverage
47
+ .coverage.*
48
+ .cache
49
+ nosetests.xml
50
+ coverage.xml
51
+ *,cover
52
+ .hypothesis/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+
62
+ # Flask stuff:
63
+ instance/
64
+ .webassets-cache
65
+
66
+ # Scrapy stuff:
67
+ .scrapy
68
+
69
+ # Sphinx documentation
70
+ docs/_build/
71
+
72
+ # PyBuilder
73
+ target/
74
+
75
+ # IPython Notebook
76
+ .ipynb_checkpoints
77
+
78
+ # pyenv
79
+ .python-version
80
+
81
+ # celery beat schedule file
82
+ celerybeat-schedule
83
+
84
+ # dotenv
85
+ .env
86
+
87
+ # virtualenv
88
+ venv/
89
+ ENV/
90
+
91
+ #pycharm
92
+ .idea/
93
+
94
+ # Spyder project settings
95
+ .spyderproject
96
+
97
+ # Rope project settings
98
+ .ropeproject
99
+
100
+ # production folder in classes
101
+ classes/production
102
+ classes/gnss_data.cfg
103
+ classes/error*
104
+ .DS_Store
105
+
106
+ # config files in Parallel.GAMIT folder
107
+ parallel_gamit/gnss_data.cfg
108
+ parallel_gamit/link_tables.sh
109
+
110
+ reinstall_geode.sh
111
+ reinstall_geode.sh
@@ -0,0 +1,10 @@
1
+ cff-version: 1.2.0
2
+ message: "If you use this software, please cite it as below."
3
+ authors:
4
+ - family-names: "Gómez"
5
+ given-names: "Demián"
6
+ orcid: "https://orcid.org/0000-0002-5276-581X"
7
+ title: "Parallel.GAMIT"
8
+ version: 1.2.2
9
+ date-released: 2017-12-18
10
+ url: "https://github.com/demiangomez/Parallel.GAMIT"