STIC-JPL 1.6.0__py3-none-any.whl
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.
- STIC_JPL/ECOv002-cal-val-STIC-JPL-inputs.csv +1066 -0
- STIC_JPL/ECOv002-cal-val-STIC-JPL-outputs.csv +1066 -0
- STIC_JPL/ECOv002_calval_STIC_inputs.py +19 -0
- STIC_JPL/FVC_from_NDVI.py +49 -0
- STIC_JPL/LAI_from_NDVI.py +61 -0
- STIC_JPL/STIC_JPL.py +5 -0
- STIC_JPL/__init__.py +4 -0
- STIC_JPL/canopy_air_stream.py +37 -0
- STIC_JPL/celcius_to_kelvin.py +11 -0
- STIC_JPL/closure.py +68 -0
- STIC_JPL/constants.py +31 -0
- STIC_JPL/exceptions.py +3 -0
- STIC_JPL/generate_STIC_inputs.py +65 -0
- STIC_JPL/initialize_with_solar.py +80 -0
- STIC_JPL/initialize_without_solar.py +85 -0
- STIC_JPL/iterate_with_solar.py +144 -0
- STIC_JPL/iterate_without_solar.py +121 -0
- STIC_JPL/model.py +420 -0
- STIC_JPL/net_radiation.py +38 -0
- STIC_JPL/process_STIC_table.py +152 -0
- STIC_JPL/root_zone_initialization.py +36 -0
- STIC_JPL/root_zone_iteration.py +66 -0
- STIC_JPL/soil_moisture_initialization.py +115 -0
- STIC_JPL/soil_moisture_iteration.py +131 -0
- STIC_JPL/verify.py +71 -0
- STIC_JPL/version.py +3 -0
- stic_jpl-1.6.0.dist-info/METADATA +103 -0
- stic_jpl-1.6.0.dist-info/RECORD +33 -0
- stic_jpl-1.6.0.dist-info/WHEEL +5 -0
- stic_jpl-1.6.0.dist-info/top_level.txt +2 -0
- tests/test_import_STIC.py +2 -0
- tests/test_import_dependencies.py +18 -0
- tests/test_verify.py +5 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: STIC-JPL
|
|
3
|
+
Version: 1.6.0
|
|
4
|
+
Summary: Surface Temperature Initiated Closure (STIC) Evapotranspiration Model Python Implementation
|
|
5
|
+
Author-email: Gregory Halverson <gregory.h.halverson@jpl.nasa.gov>, Kaniska Mallick <kaniska.mallick@list.lu>, Madeleine Pascolini-Campbell <madeleine.a.pascolini-campbell@jpl.nasa.gov>, "Claire S. Villanueva-Weeks" <claire.s.villanueva-weeks@jpl.gov>
|
|
6
|
+
Project-URL: Homepage, https://github.com/JPL-Evapotranspiration-Algorithms/STIC-JPL
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Operating System :: OS Independent
|
|
9
|
+
Requires-Python: >=3.10
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
Requires-Dist: BESS-JPL>=1.21.0
|
|
12
|
+
Requires-Dist: check-distribution
|
|
13
|
+
Requires-Dist: colored-logging
|
|
14
|
+
Requires-Dist: daylight-evapotranspiration>=1.3.4
|
|
15
|
+
Requires-Dist: ECOv002-calval-tables>=1.11.0
|
|
16
|
+
Requires-Dist: ECOv002-CMR>=1.0.5
|
|
17
|
+
Requires-Dist: ECOv002-granules>=1.0.3
|
|
18
|
+
Requires-Dist: ECOv003-granules
|
|
19
|
+
Requires-Dist: GEOS5FP>=1.1.1
|
|
20
|
+
Requires-Dist: monte-carlo-sensitivity
|
|
21
|
+
Requires-Dist: numpy
|
|
22
|
+
Requires-Dist: pandas
|
|
23
|
+
Requires-Dist: pytictoc
|
|
24
|
+
Requires-Dist: rasters>=1.4.6
|
|
25
|
+
Requires-Dist: seaborn
|
|
26
|
+
Requires-Dist: SEBAL-soil-heat-flux
|
|
27
|
+
Requires-Dist: solar-apparent-time>=1.5.3
|
|
28
|
+
Requires-Dist: verma-net-radiation>=1.1.0
|
|
29
|
+
Provides-Extra: dev
|
|
30
|
+
Requires-Dist: build; extra == "dev"
|
|
31
|
+
Requires-Dist: pytest>=6.0; extra == "dev"
|
|
32
|
+
Requires-Dist: pytest-cov; extra == "dev"
|
|
33
|
+
Requires-Dist: jupyter; extra == "dev"
|
|
34
|
+
Requires-Dist: pytest; extra == "dev"
|
|
35
|
+
Requires-Dist: twine; extra == "dev"
|
|
36
|
+
|
|
37
|
+
# `STIC-JPL`
|
|
38
|
+
## Surface Temperature Initiated Closure (STIC) Evapotranspiration Model Python Implementation
|
|
39
|
+
|
|
40
|
+
[](https://github.com/JPL-Evapotranspiration-Algorithms/STIC/actions/workflows/ci.yml)
|
|
41
|
+
|
|
42
|
+
This repository contains the python implementation for the Surface Temperature Initiated Closure (STIC) evapotranspiration model, used by the ECOsystem Spaceborne Thermal Radiometer Experiment on Space Station (ECOSTRESS) and Surface Biology and Geology (SBG) missions.
|
|
43
|
+
|
|
44
|
+
This software package is a Python implementation of the Surface Temperature Initiated Closure (STIC) version 1.3 model designed to implement LST to solve the aerodynamic temperature, which is critical for ET modeling. The original STIC model produced by Kaniska Mallick (Mallick et al. 2015; 2018; 2022) was re-implemented from MATLAB code to Python by Gregory Halverson and Madeleine Pascolini-Campbell. The software was developed under a research grant by the NASA Research Opportunities in Space and Earth Sciences (ROSES) program. It is intended for use by the Hyperspectral Thermal Emission Spectrometer (HyTES), MODIS/ASTER (MASTER) Airborne Simulator, Ecosystem Spaceborne Thermal Radiometer Experiment on Space Station (ECOSTRESS) mission and as a precursor for the Surface Biology and Geology (SBG) mission.
|
|
45
|
+
|
|
46
|
+
The software was developed as part of a research grant by the NASA Research Opportunities in Space and Earth Sciences (ROSES) program. It was designed for use by the Hyperspectral Thermal Emission Spectrometer (HyTES), MODIS/ASTER (MASTER) Airborne Simulator, Ecosystem Spaceborne Thermal Radiometer Experiment on Space Station (ECOSTRESS) mission as a precursor for the Surface Biology and Geology (SBG) mission. It may also be useful for general remote sensing and GIS projects in Python. This package can be utilized for remote sensing research in Jupyter notebooks and deployed for operations in data processing pipelines.
|
|
47
|
+
|
|
48
|
+
The software is being released according to the SPD-41 open-science requirements of NASA-funded ROSES projects.
|
|
49
|
+
|
|
50
|
+
Gregory H. Halverson (they/them)<br>
|
|
51
|
+
[gregory.h.halverson@jpl.nasa.gov](mailto:gregory.h.halverson@jpl.nasa.gov)<br>
|
|
52
|
+
Lead developer<br>
|
|
53
|
+
NASA Jet Propulsion Laboratory 329G
|
|
54
|
+
|
|
55
|
+
Kaniska Mallick (he/him)<br>
|
|
56
|
+
[kaniska.mallick@list.lu](mailto:kaniska.mallick@list.lu)<br>
|
|
57
|
+
Algorithm inventor<br>
|
|
58
|
+
Luxembourg Institute of Science and Technology
|
|
59
|
+
|
|
60
|
+
Tian Hu (he/him)<br>
|
|
61
|
+
[tian.hu@list.lu](mailto:tian.hu@list.lu)<br>
|
|
62
|
+
Algorithm developer<br>
|
|
63
|
+
Luxembourg Institute of Science and Technology
|
|
64
|
+
|
|
65
|
+
Madeleine Pascolini-Campbell (she/her)<br>
|
|
66
|
+
[madeleine.a.pascolini-campbell@jpl.nasa.gov](mailto:madeleine.a.pascolini-campbell@jpl.nasa.gov)<br>
|
|
67
|
+
Algorithm developer<br>
|
|
68
|
+
NASA Jet Propulsion Laboratory 329F
|
|
69
|
+
|
|
70
|
+
Claire Villanueva-Weeks (she/her)<br>
|
|
71
|
+
[claire.s.villanueva-weeks@jpl.nasa.gov](mailto:claire.s.villanueva-weeks@jpl.nasa.gov)<br>
|
|
72
|
+
Code maintenance<br>
|
|
73
|
+
NASA Jet Propulsion Laboratory 329G
|
|
74
|
+
|
|
75
|
+
## Installation
|
|
76
|
+
|
|
77
|
+
Use the pip package manager to install the `STIC-JPL` PyPi package with dashes in the name.
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
pip install STIC-JPL
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Usage
|
|
84
|
+
|
|
85
|
+
Import the `STIC_JPL` function from the `STIC_JPL` package with underscores in the name.
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
from STIC_JPL import STIC_JPL
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
See the [ECOSTRESS example](ECOSTRESS%20Example.ipynb) notebook for usage.
|
|
92
|
+
|
|
93
|
+
See the [STIC sensitivity](STIC%20Sensitivity.ipynb) notebook for sensitivity analysis.
|
|
94
|
+
|
|
95
|
+
## References
|
|
96
|
+
|
|
97
|
+
Mallick, K., Boegh, E., Trebs, I., Alfieri, J. G., Kustas, W. P., Prueger, J. H., ... & Jarvis, A. J. (2015). Reintroducing radiometric surface temperature into the P enman‐M onteith formulation. Water Resources Research, 51(8), 6214-6243. https://doi.org/10.1002/2014WR016106
|
|
98
|
+
|
|
99
|
+
Mallick, K., Toivonen, E., Trebs, I., Boegh, E., Cleverly, J., Eamus, D., ... & Garcia, M. (2018). Bridging Thermal Infrared Sensing and Physically‐Based Evapotranspiration Modeling: From Theoretical Implementation to Validation Across an Aridity Gradient in Australian Ecosystems. Water Resources Research, 54(5), 3409-3435. https://doi.org/10.1029/2017WR021357
|
|
100
|
+
|
|
101
|
+
Mallick, K., Baldocchi, D., Jarvis, A., Hu, T., Trebs, I., Sulis, M., ... & Kustas, W. P. (2022). Insights Into the Aerodynamic Versus Radiometric Surface Temperature Debate in Thermal‐Based Evaporation Modeling. Geophysical Research Letters, 49(15), e2021GL097568. https://doi.org/10.1029/2021GL097568
|
|
102
|
+
|
|
103
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
STIC_JPL/ECOv002-cal-val-STIC-JPL-inputs.csv,sha256=sd5u6iQwUoOcz_moYdsdislV2MjhnpDZ82p7C3m_v_E,1390959
|
|
2
|
+
STIC_JPL/ECOv002-cal-val-STIC-JPL-outputs.csv,sha256=xSoWulmbvgL4VShAtUwmwV-OHSIUQk6jDp7K7hHvHeM,1610174
|
|
3
|
+
STIC_JPL/ECOv002_calval_STIC_inputs.py,sha256=kDtnAfDNE3yI790gcXCEAr2L1DjiHDLC6lwljAydAf4,606
|
|
4
|
+
STIC_JPL/FVC_from_NDVI.py,sha256=QiALDwRVoOmG9XLfQHZQhAfi8B7QuKc2cae6RIi9yYI,1852
|
|
5
|
+
STIC_JPL/LAI_from_NDVI.py,sha256=XgBIEtFG_sSAzNpb-v2E3rQ1HFoxw4gHhviQoiTVAPU,2529
|
|
6
|
+
STIC_JPL/STIC_JPL.py,sha256=2ibIJXyYmXuTI5ZHDSOJeIwmfY89NC2urIRsAK62dC4,226
|
|
7
|
+
STIC_JPL/__init__.py,sha256=u2k8EwOE8w44eFguL4MHJOuoaO_57Kqah82oLEujn54,94
|
|
8
|
+
STIC_JPL/canopy_air_stream.py,sha256=UYp3l7mt0XH4SqvCGZhRzCIL-v7-Rvxxfm-C81lheSU,1637
|
|
9
|
+
STIC_JPL/celcius_to_kelvin.py,sha256=QZ1gA8BHBHbdlgn1v8tEMG17yY2r-SCBnaHrGXySItg,316
|
|
10
|
+
STIC_JPL/closure.py,sha256=TRJm-CyW-VU1NS-zLZ_K1urjc1o0hKzu5fkO5cHrHZc,4243
|
|
11
|
+
STIC_JPL/constants.py,sha256=h_s30DhZgySVAuFQ97icMw3sJ_HU-iMtfDrDK765ms0,738
|
|
12
|
+
STIC_JPL/exceptions.py,sha256=GjGArqFDypNkD-LQf_W4kpAZ8B4xwDYTlx8DKPd809k,115
|
|
13
|
+
STIC_JPL/generate_STIC_inputs.py,sha256=Vwuqq-PLiH2IBd1v0Vt2TVbdIRK8D1zU_uMgReCefmQ,2382
|
|
14
|
+
STIC_JPL/initialize_with_solar.py,sha256=P-22Wn8-sdvh2o4LGb9XfbCdXGWcOxdWwMzEYfx2Nfo,3759
|
|
15
|
+
STIC_JPL/initialize_without_solar.py,sha256=M_7QfP2pr2w5sQO7UOW1GPqxpmQkjmsQ526BgYVVALk,4675
|
|
16
|
+
STIC_JPL/iterate_with_solar.py,sha256=T9DezL59xaV63o6f7_ouCGcQwPi1dIvhlJB26TMGuDo,6373
|
|
17
|
+
STIC_JPL/iterate_without_solar.py,sha256=09RERpN6tdZr6ORDhMwEFXwx8941vyn1HMJQ-Q_bY6s,6140
|
|
18
|
+
STIC_JPL/model.py,sha256=e7NoUMAB7Yq3EFXtzA_mkPL0gXpVqu_lxwBvGztILs4,19149
|
|
19
|
+
STIC_JPL/net_radiation.py,sha256=Uwudsazul8V-x5t8KQLi3wpYi-wjMwT__eqZCRV2bIw,1187
|
|
20
|
+
STIC_JPL/process_STIC_table.py,sha256=GBiCgp_qOjYFDwpug9b85B2mxzc9uZypSSiIo9Nu1tE,5379
|
|
21
|
+
STIC_JPL/root_zone_initialization.py,sha256=3JVKNDt3ebIiGVfuhBawjKs-BicNwkbfMprkzSxd4Cg,1581
|
|
22
|
+
STIC_JPL/root_zone_iteration.py,sha256=1XOMFE3-TdJZzUU5vouflUO4NKaZwAW6s1KJrNez3Es,3787
|
|
23
|
+
STIC_JPL/soil_moisture_initialization.py,sha256=wWhAmvNT8tAIm_Sul8mEj6VdNuj7K14TBGUjKfqJrso,5610
|
|
24
|
+
STIC_JPL/soil_moisture_iteration.py,sha256=QJXOPMxxwIIskpx9zLkXUPfuhWgFPUBcRnGhZo2UjAw,6493
|
|
25
|
+
STIC_JPL/verify.py,sha256=qhinSzvJilKyYYO4VrIZyfgrghtQo1_E5nbDcFamgdM,3057
|
|
26
|
+
STIC_JPL/version.py,sha256=mh4rY2VxcqltBQ-_Lm9uho8UbAkmfwHPdpZSE69bqz8,74
|
|
27
|
+
tests/test_import_STIC.py,sha256=MeONu3l_YowKsZoQrRxq-KadODljbHgc6Ch4GaFu7VE,48
|
|
28
|
+
tests/test_import_dependencies.py,sha256=p0U2oqmPlXXRBYkpQRKprt1_sI18x7exgiNBXQyAeSY,384
|
|
29
|
+
tests/test_verify.py,sha256=hGOoidqfKfwO6jBFu8Ej8M5LexW3Cduz3Q5lPKu0g3Q,151
|
|
30
|
+
stic_jpl-1.6.0.dist-info/METADATA,sha256=gJSoZwz02MQiQqboKlNwVpKvnPI6-j1UDOcy56qBlrI,5923
|
|
31
|
+
stic_jpl-1.6.0.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
32
|
+
stic_jpl-1.6.0.dist-info/top_level.txt,sha256=G0P03_U7fStsniYyHsBHy254cXAwOcA-H_xvSgbNpRM,15
|
|
33
|
+
stic_jpl-1.6.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import pytest
|
|
2
|
+
|
|
3
|
+
# List of dependencies
|
|
4
|
+
dependencies = [
|
|
5
|
+
"colored_logging",
|
|
6
|
+
"ECOv002_CMR",
|
|
7
|
+
"ECOv002_granules",
|
|
8
|
+
"GEOS5FP",
|
|
9
|
+
"numpy",
|
|
10
|
+
"pandas",
|
|
11
|
+
"rasters",
|
|
12
|
+
"solar_apparent_time"
|
|
13
|
+
]
|
|
14
|
+
|
|
15
|
+
# Generate individual test functions for each dependency
|
|
16
|
+
@pytest.mark.parametrize("dependency", dependencies)
|
|
17
|
+
def test_dependency_import(dependency):
|
|
18
|
+
__import__(dependency)
|