romero61 commited on
Commit
e0e86b5
·
1 Parent(s): 31c46ee

needs solara refactor

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .DS_Store +0 -0
  2. .github/workflows/sync-hf.yml +20 -0
  3. .gitignore +162 -0
  4. .vscode/settings.json +6 -0
  5. Dockerfile +24 -0
  6. LICENSE +21 -0
  7. README.md +5 -6
  8. pages/01-main.py +157 -0
  9. public/Models/V1.h5 +3 -0
  10. public/Models/V1_1.h5 +3 -0
  11. public/Models/V1_1t.h5 +3 -0
  12. public/Models/V2_1_DUSMASS25.h5 +3 -0
  13. public/Models/V2_1_DUSMASS25t.h5 +3 -0
  14. public/Models/V2_1_OCSMASS.h5 +3 -0
  15. public/Models/V2_1_OCSMASSt.h5 +3 -0
  16. public/Models/V2_1_SO2SMASS.h5 +3 -0
  17. public/Models/V2_1_SO2SMASSt.h5 +3 -0
  18. public/Models/V2_1_SO4SMASS.h5 +3 -0
  19. public/Models/V2_1_SO4SMASSt.h5 +3 -0
  20. public/Models/V2_1_SSSMASS25.h5 +3 -0
  21. public/Models/V2_1_SSSMASS25t.h5 +3 -0
  22. public/Models/V2_DUSMASS25.h5 +3 -0
  23. public/Models/V2_OCSMASS.h5 +3 -0
  24. public/Models/V2_SO2SMASS.h5 +3 -0
  25. public/Models/V2_SO4SMASS.h5 +3 -0
  26. public/Models/V2_SSSMASS25.h5 +3 -0
  27. public/Models/V3_1_DUSMASS25.h5 +3 -0
  28. public/Models/V3_1_DUSMASS25t.h5 +3 -0
  29. public/Models/V3_1_OCSMASS.h5 +3 -0
  30. public/Models/V3_1_OCSMASSt.h5 +3 -0
  31. public/Models/V3_1_SO2SMASS.h5 +3 -0
  32. public/Models/V3_1_SO2SMASSt.h5 +3 -0
  33. public/Models/V3_1_SO4SMASS.h5 +3 -0
  34. public/Models/V3_1_SO4SMASSt.h5 +3 -0
  35. public/Models/V3_1_SSSMASS25.h5 +3 -0
  36. public/Models/V3_1_SSSMASS25t.h5 +3 -0
  37. public/Models/V3_DUSMASS25.h5 +3 -0
  38. public/Models/V3_OCSMASS.h5 +3 -0
  39. public/Models/V3_SO2SMASS.h5 +3 -0
  40. public/Models/V3_SO4SMASS.h5 +3 -0
  41. public/Models/V3_SSSMASS25.h5 +3 -0
  42. public/Models/V4_1_cat_DUSMASS25.h5 +3 -0
  43. public/Models/V4_1_cat_DUSMASS25t.h5 +3 -0
  44. public/Models/V4_1_cat_OCSMASS.h5 +3 -0
  45. public/Models/V4_1_cat_OCSMASSt.h5 +3 -0
  46. public/Models/V4_1_cat_SO2SMASS.h5 +3 -0
  47. public/Models/V4_1_cat_SO2SMASSt.h5 +3 -0
  48. public/Models/V4_1_cat_SSSMASS25.h5 +3 -0
  49. public/Models/V4_1_cat_SSSMASS25t.h5 +3 -0
  50. public/Models/V4_1_cat_wSO4.h5 +3 -0
.DS_Store ADDED
Binary file (6.15 kB). View file
 
.github/workflows/sync-hf.yml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Sync to Hugging Face hub
2
+ on:
3
+ push:
4
+ branches: [main]
5
+
6
+ # to run this workflow manually from the Actions tab
7
+ workflow_dispatch:
8
+
9
+ jobs:
10
+ sync-to-hub:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v3
14
+ with:
15
+ fetch-depth: 0
16
+ lfs: true
17
+ - name: Push to hub
18
+ env:
19
+ HF_TOKEN: ${{ secrets.HF_TOKEN }}
20
+ run: git push --force https://romero61:$HF_TOKEN@huggingface.co/spaces/romero61/USRA-STI main
.gitignore ADDED
@@ -0,0 +1,162 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+ private/
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .nox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *.cover
50
+ *.py,cover
51
+ .hypothesis/
52
+ .pytest_cache/
53
+ cover/
54
+
55
+ # Translations
56
+ *.mo
57
+ *.pot
58
+
59
+ # Django stuff:
60
+ *.log
61
+ local_settings.py
62
+ db.sqlite3
63
+ db.sqlite3-journal
64
+
65
+ # Flask stuff:
66
+ instance/
67
+ .webassets-cache
68
+
69
+ # Scrapy stuff:
70
+ .scrapy
71
+
72
+ # Sphinx documentation
73
+ docs/_build/
74
+
75
+ # PyBuilder
76
+ .pybuilder/
77
+ target/
78
+
79
+ # Jupyter Notebook
80
+ .ipynb_checkpoints
81
+
82
+ # IPython
83
+ profile_default/
84
+ ipython_config.py
85
+
86
+ # pyenv
87
+ # For a library or package, you might want to ignore these files since the code is
88
+ # intended to run in multiple environments; otherwise, check them in:
89
+ # .python-version
90
+
91
+ # pipenv
92
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
93
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
94
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
95
+ # install all needed dependencies.
96
+ #Pipfile.lock
97
+
98
+ # poetry
99
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
100
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
101
+ # commonly ignored for libraries.
102
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
103
+ #poetry.lock
104
+
105
+ # pdm
106
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
107
+ #pdm.lock
108
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
109
+ # in version control.
110
+ # https://pdm.fming.dev/#use-with-ide
111
+ .pdm.toml
112
+
113
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
114
+ __pypackages__/
115
+
116
+ # Celery stuff
117
+ celerybeat-schedule
118
+ celerybeat.pid
119
+
120
+ # SageMath parsed files
121
+ *.sage.py
122
+
123
+ # Environments
124
+ .env
125
+ .venv
126
+ env/
127
+ venv/
128
+ ENV/
129
+ env.bak/
130
+ venv.bak/
131
+
132
+ # Spyder project settings
133
+ .spyderproject
134
+ .spyproject
135
+
136
+ # Rope project settings
137
+ .ropeproject
138
+
139
+ # mkdocs documentation
140
+ /site
141
+
142
+ # mypy
143
+ .mypy_cache/
144
+ .dmypy.json
145
+ dmypy.json
146
+
147
+ # Pyre type checker
148
+ .pyre/
149
+
150
+ # pytype static type analyzer
151
+ .pytype/
152
+
153
+ # Cython debug symbols
154
+ cython_debug/
155
+
156
+ # PyCharm
157
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
158
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
159
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
160
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
161
+ #.idea/
162
+
.vscode/settings.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "python.analysis.typeCheckingMode": "off",
3
+ "python.analysis.extraPaths": [
4
+ "./public"
5
+ ]
6
+ }
Dockerfile ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM jupyter/base-notebook:latest
2
+
3
+ RUN mamba install -c conda-forge leafmap geopandas localtileserver -y && \
4
+ fix-permissions "${CONDA_DIR}" && \
5
+ fix-permissions "/home/${NB_USER}"
6
+
7
+ COPY requirements.txt .
8
+ RUN pip install -r requirements.txt
9
+
10
+ RUN mkdir ./pages
11
+ COPY /pages ./pages
12
+
13
+ RUN mkdir ./public
14
+ COPY /pages ./public
15
+
16
+ ENV PROJ_LIB='/opt/conda/share/proj'
17
+
18
+ USER root
19
+ RUN chown -R ${NB_UID} ${HOME}
20
+ USER ${NB_USER}
21
+
22
+ EXPOSE 8765
23
+
24
+ CMD ["solara", "run", "./pages", "--host=0.0.0.0"]
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Open Geospatial Solutions
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
README.md CHANGED
@@ -1,11 +1,10 @@
1
  ---
2
- title: USRA STI
3
- emoji: 🦀
4
- colorFrom: blue
5
- colorTo: indigo
6
  sdk: docker
7
- pinned: false
8
  license: mit
 
9
  ---
10
 
11
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: USRA-STI-PM2.5
3
+ emoji: 🔥
4
+ colorFrom: black
5
+ colorTo: slate
6
  sdk: docker
 
7
  license: mit
8
+ app_port: 8765
9
  ---
10
 
 
pages/01-main.py ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Required Libraries
2
+ import os
3
+ import sys
4
+ import ee
5
+ import geemap
6
+ import geopandas
7
+ import shapely
8
+ from pysolar.solar import get_altitude_fast
9
+ import rasterio
10
+ import rioxarray
11
+ import cartopy
12
+ import json
13
+ import geojson
14
+ import ipywidgets
15
+ import ipyleaflet
16
+ import solara
17
+ from google.oauth2.service_account import Credentials
18
+ import numpy as np
19
+ import gc
20
+ import math
21
+ import time
22
+ import datetime as dt
23
+ import keras
24
+ import keras as k
25
+ import keras.backend as kr
26
+ import multiprocessing as mp
27
+ from shapely.geometry import Point
28
+ from scipy.spatial import KDTree
29
+ import geemap.cartoee as cartoee
30
+ import datetime
31
+ import ipywidgets as widgets
32
+ from ipyleaflet import Map, DrawControl, GeoData, WidgetControl
33
+
34
+ from IPython.display import display, clear_output
35
+ import matplotlib.pyplot as plt
36
+ import cartopy.crs as ccrs
37
+ import cartopy.feature as cfeature
38
+ # Get the path to the service account JSON file from the environment variable
39
+ key_content = os.environ.get('EEPRIVATE_KEY')
40
+
41
+ # Parse the JSON content
42
+ key_dict = json.loads(key_content)
43
+ # Create credentials from the parsed JSON content
44
+ SCOPES = [
45
+ 'https://www.googleapis.com/auth/earthengine',
46
+ 'https://www.googleapis.com/auth/cloud-platform'
47
+ ]
48
+ credentials = Credentials.from_service_account_info(key_dict, scopes=SCOPES)
49
+
50
+ # Initialize Earth Engine with the created credentials
51
+ ee.Initialize(credentials)
52
+
53
+
54
+ # Get the project root directory
55
+ project_root = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
56
+ module_path = os.path.join(project_root, 'public')
57
+ # Add the module path to the Python path
58
+ sys.path.append(module_path)
59
+
60
+ # Importing the classes from the respective scripts
61
+
62
+
63
+ from merra_date_ui import MerraDateUI
64
+ from map_ui import MapUI
65
+ from dataviz_ui import EarthEngineDataVizUI
66
+ from run_model import EarthEngineUI
67
+ from export_ui import ExportUI
68
+
69
+
70
+ # Global reactive variables to store the outputs of MapUI and MerraDateUI
71
+ selected_coordinates = solara.reactive(None)
72
+ selected_country_feature = solara.reactive(None)
73
+ available_dates = solara.reactive(None)
74
+ # Global state variable to track the status of model_ui
75
+ model_ui_status = solara.reactive(False)
76
+
77
+ def ModelComponent():
78
+ if selected_coordinates.value and selected_country_feature.value and available_dates.value:
79
+ try:
80
+ model_ui = EarthEngineUI(available_dates=available_dates.value,
81
+ selected_coordinates=selected_coordinates.value,
82
+ selected_country_feature=selected_country_feature.value)
83
+ model_ui.display()
84
+ if hasattr(model_ui, 'final_df'):
85
+ model_ui_status.value = True
86
+ except Exception as e:
87
+ solara.Error(f"Error: {str(e)}")
88
+ else:
89
+ solara.Warning("Please interact with the map and date UI before running the model.")
90
+
91
+
92
+ @solara.component
93
+ def Page():
94
+ with solara.Column(style={"min-width": "500px"}):
95
+ with solara.Card(title="USRA-STI-PM2.5", subtitle='WIP'):
96
+ solara.Markdown(
97
+ '''
98
+ ## Overview
99
+ WIP
100
+
101
+ '''
102
+ )
103
+
104
+ ui = MapUI()
105
+ merra_ui = MerraDateUI()
106
+
107
+
108
+ # Update the reactive variables based on the outputs of MapUI and MerraDateUI
109
+ selected_coordinates.value = ui.selected_coordinates
110
+ selected_country_feature.value = ui.selected_country_feature
111
+ available_dates.value = merra_ui.available_dates
112
+
113
+ # Display the UI components
114
+ display(merra_ui.display_ui(), ui.display_map())
115
+
116
+ # Conditional rendering of model_ui based on the availability of required values
117
+ # Display the ModelComponent
118
+
119
+ #ModelComponent()
120
+
121
+ '''if selected_coordinates.value and selected_country_feature.value and available_dates.value:
122
+ try:
123
+ model_ui = EarthEngineUI(available_dates=available_dates.value,
124
+ selected_coordinates=selected_coordinates.value,
125
+ selected_country_feature=selected_country_feature.value)
126
+ model_ui.display()
127
+ if hasattr(model_ui, 'final_df'):
128
+ model_ui_status.value = True
129
+ except Exception as e:
130
+ solara.Error(f"Error: {str(e)}")
131
+ else:
132
+ solara.Warning("Please interact with the map and date UI before running the model.")'''
133
+
134
+ '''if model_ui_status.value:
135
+ viz_ui = EarthEngineDataVizUI(dataframe=model_ui.final_df,
136
+ coordinates=ui.selected_coordinates,
137
+ country=ui.selected_country_feature)
138
+ viz_ui.display()
139
+
140
+ ex_ui = ExportUI(model_ui.final_df)
141
+ ex_ui.display()
142
+ else:
143
+ solara.Warning("Please wait for the model to finish processing before accessing visualization and export features.")'''
144
+
145
+ model_ui = EarthEngineUI(available_dates=merra_ui.available_dates,
146
+ selected_coordinates= ui.selected_coordinates,
147
+ selected_country_feature= ui.selected_country_feature)
148
+ model_ui.display()
149
+
150
+ '''viz_ui = EarthEngineDataVizUI(dataframe=model_ui.final_df, coordinates=ui.selected_coordinates, country=ui.selected_country_feature)
151
+ viz_ui.display()
152
+
153
+ ex_ui =ExportUI(model_ui.final_df)
154
+ ex_ui.display()
155
+ model_ui.final_df'''
156
+
157
+
public/Models/V1.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:95cdda94287bbfea4ed0cc34969a31f56e0ca49be8d6eca7ae7333bb44e866d6
3
+ size 77440
public/Models/V1_1.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f4e65a02848c3fe71e90c1b90ffa4a89be21a9e7e9418359fcf02154aa6fca6b
3
+ size 1289888
public/Models/V1_1t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f6b6dd71b40ea153e8ef405926db97c7004ca745dd1ba48160d36717a7417c96
3
+ size 1297304
public/Models/V2_1_DUSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:704f357701a5e596fc0150c5912f7fe99dac0619cd7227df506ec94a9f5540c7
3
+ size 1289848
public/Models/V2_1_DUSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ca81ebec2c068d7f9cbcd64e38dd6bc53f4503d8b0f1b73ea37efa2abd66f4e2
3
+ size 1290672
public/Models/V2_1_OCSMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b7e939056b8eeef7155456b8dc534791fc86213707a700ad546580068b563d0e
3
+ size 1289848
public/Models/V2_1_OCSMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:39b2d5133d6da1069cbd8077f680c188d739cc8be231abfa0e5b4dd5ab8cd365
3
+ size 1290672
public/Models/V2_1_SO2SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f663469a7c929d316f83197dc6b19d4c72866f9b024f7b5afb70b53ee7f2a82
3
+ size 1289848
public/Models/V2_1_SO2SMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7a99aceabb6b355fbd995dfed939377987458c472371cfc4a7201f6913314f6a
3
+ size 1290672
public/Models/V2_1_SO4SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7e5462330cf8b6c44544d00eaf66c15234b28ad9075ae6f03de61e4fcc50e3c0
3
+ size 1289848
public/Models/V2_1_SO4SMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:50c8e0b660f8c896691f62fbd522da73ce2659cd00b07567909263adfd780352
3
+ size 1290672
public/Models/V2_1_SSSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f47557573fa4e5c360e6a3300becd7c22b79ce6023d18910cd4f2f129d5c0b87
3
+ size 1289848
public/Models/V2_1_SSSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0e307b7ccf559a1061fde26574a7893f0c3294914698cbb68e3a2fb4db678053
3
+ size 1290880
public/Models/V2_DUSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1201e3c876f7f9410aed50ac162becae6634486ca16a5cfc8ea8d867d406e1f6
3
+ size 65440
public/Models/V2_OCSMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1220a090257404ed2b08fc222ebfde6008df2066e83973d0b553267c5a7ab80e
3
+ size 65440
public/Models/V2_SO2SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:787460ec57539bd80aaec4a9e05e758c7bd0fd3d5b4b7e7a2c76e1b6b9a87078
3
+ size 65440
public/Models/V2_SO4SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cfb621229f9735e98fbc21656cfe43390cf8dd6e4825da0d8dc7ad8a2d29382c
3
+ size 65536
public/Models/V2_SSSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3e482e01ca9cbdda84c4dc9bff5d2ca2595154a911e8b123a26fbe9703e0f40e
3
+ size 65536
public/Models/V3_1_DUSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:89e1a7ac757c380516501d5f376ce6a527e7eaff082039e1793f15fa516104ee
3
+ size 1289888
public/Models/V3_1_DUSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:16020a402e723fb0d9ece0456b1686bd018767b140314b8fde310d00e7159bad
3
+ size 1290712
public/Models/V3_1_OCSMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:da1689e0b34afea290246cb034d45873071a128077f4481eb3ca6732902cb1b8
3
+ size 1289848
public/Models/V3_1_OCSMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:54befaa1ed29ead90dac0d556a65bea9bd7c5f4180f1508ecaefc93bf4107794
3
+ size 1290672
public/Models/V3_1_SO2SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:defccb6415f8adff7303bb82fe5d58c537d8df5822969fa1cfd5c60862407da4
3
+ size 1289848
public/Models/V3_1_SO2SMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:03ba7c0dcf7cfa771ae2dbfea98704f6fd03a196c5bbf26ae6cd2c568d8524c4
3
+ size 1290672
public/Models/V3_1_SO4SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:07f71649d7d464b8c7f0c029e118414447099f14b2d9bdb6391864e0d6f824b0
3
+ size 1289848
public/Models/V3_1_SO4SMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e092d033ac8e0706318b7f0933318ca9cf601f3e341ba11c1771e87ce4de22d6
3
+ size 1290672
public/Models/V3_1_SSSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:eb83db87dab37ff3cb9662f8cb30aa58a43a54673ba8bc4ebe0bd29afac74087
3
+ size 1289848
public/Models/V3_1_SSSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d1888e2e035ac76914ebed26e5db9b81143388b7d8309a68dc683fd80a709c31
3
+ size 1290672
public/Models/V3_DUSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:71d1a9fe95b4e879432d3b7562500141cb25b996c0d29d266352e6710bad2bba
3
+ size 77440
public/Models/V3_OCSMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2c47f5673c9a02c357dab39a1a434868c1a12a895bcc1089f25f0dd043cc76ce
3
+ size 76648
public/Models/V3_SO2SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:50b4d120c9c3b4b055527523626fea5ee8fb43fc00ec44e326805b5845100529
3
+ size 77680
public/Models/V3_SO4SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:703650ff4e2bbfb502f87da9daf89b761390f01cb3105822c818114b73fce07a
3
+ size 77680
public/Models/V3_SSSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:274de18df149b98b9d88ddc9ca92934461c5b4b2e970a390d21f5da8553c7648
3
+ size 65536
public/Models/V4_1_cat_DUSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:008d6294c5b3392c32a75c492d23d19b2388d82fe962d8362f4c963fa6d1dc74
3
+ size 1289888
public/Models/V4_1_cat_DUSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ba3968166b91f8f36aa10eaa86ee8afa47bb9d160e1702dfe7e4b151aa294555
3
+ size 1290712
public/Models/V4_1_cat_OCSMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fd65bd890e88b9946bba358515bdb7aeee00e5dc4708328d1c0a8b242a7e0b6d
3
+ size 1288816
public/Models/V4_1_cat_OCSMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f88067a3550d5c06d06a72738691c29cffdd8806c27f7a59b4c78440ef1dd1b2
3
+ size 1290672
public/Models/V4_1_cat_SO2SMASS.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:507701529e399ded0a00b55555b118f0ea1b92d8b453c9ddfc887ec16de20411
3
+ size 1289848
public/Models/V4_1_cat_SO2SMASSt.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:662bc5ea5ba69a430ec95d77e406ad4e1d2212b7758be5e05aa0bcb24911d2ec
3
+ size 1290672
public/Models/V4_1_cat_SSSMASS25.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:170be4d994052c102217abcc410aacd726515fb842ecaec0a73dbae04a8d1cb3
3
+ size 1288816
public/Models/V4_1_cat_SSSMASS25t.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e58dc2e8fd04546657b5ae2935a60db9d76a76baac2fea7286360a4d4c970efc
3
+ size 1290672
public/Models/V4_1_cat_wSO4.h5 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a36f2c8dc33a02696be848e4add0a01a1d5c7d07d1cd038c26b949c9a69ef32d
3
+ size 1289848