Skip to content

Commit 83c6f5e

Browse files
committed
Initial commit of energy balance model
0 parents  commit 83c6f5e

File tree

6 files changed

+765
-0
lines changed

6 files changed

+765
-0
lines changed

.gitignore

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
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+
*.egg-info/
24+
.installed.cfg
25+
*.egg
26+
MANIFEST
27+
28+
# PyInstaller
29+
# Usually these files are written by a python script from a template
30+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
31+
*.manifest
32+
*.spec
33+
34+
# Installer logs
35+
pip-log.txt
36+
pip-delete-this-directory.txt
37+
38+
# Unit test / coverage reports
39+
htmlcov/
40+
.tox/
41+
.coverage
42+
.coverage.*
43+
.cache
44+
nosetests.xml
45+
coverage.xml
46+
*.cover
47+
.hypothesis/
48+
.pytest_cache/
49+
50+
# Translations
51+
*.mo
52+
*.pot
53+
54+
# Django stuff:
55+
*.log
56+
local_settings.py
57+
db.sqlite3
58+
59+
# Flask stuff:
60+
instance/
61+
.webassets-cache
62+
63+
# Scrapy stuff:
64+
.scrapy
65+
66+
# Sphinx documentation
67+
docs/_build/
68+
69+
# PyBuilder
70+
target/
71+
72+
# Jupyter Notebook
73+
.ipynb_checkpoints
74+
75+
# pyenv
76+
.python-version
77+
78+
# celery beat schedule file
79+
celerybeat-schedule
80+
81+
# SageMath parsed files
82+
*.sage.py
83+
84+
# Environments
85+
.env
86+
.venv
87+
env/
88+
venv/
89+
ENV/
90+
env.bak/
91+
venv.bak/
92+
93+
# Spyder project settings
94+
.spyderproject
95+
.spyproject
96+
97+
# Rope project settings
98+
.ropeproject
99+
100+
# mkdocs documentation
101+
/site
102+
103+
# mypy
104+
.mypy_cache/

README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# EB_AUTO - Python Release
2+
3+
This repository forms a Python implementation of the EB_AUTO Spreadsheet Energy Balance Model published by Brock and Arnold (2000). No changes have been made.
4+
5+
The model calculates each component of the surface energy balance and then, optionally, the amount of melting caused by each SEB component.
6+
7+
## Requirements
8+
9+
* Python >= 2.7
10+
* NumPy
11+
12+
Additionally, to use the example `run_ebmodel_Samplmet.py`, you will need:
13+
14+
* Pandas
15+
* Openpyxl
16+
17+
These dependencies will be met by all up-to-date releases of Anaconda Python.
18+
19+
20+
## Installation and running the example
21+
22+
Either `git clone` to your local environment or:
23+
* download as a zip file
24+
* extract it
25+
* in a terminal window, change to the directory of the extracted zip file
26+
* `python run_ebmodel_demo.py`
27+
28+
29+
## Structure
30+
31+
The model is called using two main functions contained within the `ebmodel` module.
32+
33+
* `ebmodel.calculate_seb` returns the net shortwave, net longwave, sensible heat flux and latent heat flux components for the specified meteorology.
34+
* `ebmodel.calculate_melt` returns the corresponding melt fluxes in millimetres water equivalent (mm w.e.).
35+
36+
Each of these main functions contains calls to several other functions defined in `ebmodel`.
37+
38+
39+
## Making modifications and extensions
40+
41+
You may create your own driver scripts for your own purposes. For example, one of the reasons for porting the model to Python was to couple this model to an albedo model, thereby solving for time-evolving albedo.
42+
43+
44+
## Referencing
45+
46+
This module implements the point-based glacier surface energy balance model
47+
originally developed as a spreadsheet application by:
48+
49+
Brock, B. W., and Arnold, N. (2000) Technical Communication: A spreadsheet-
50+
based (Microsoft Excel) point surface energy balance model for glacier and
51+
snow melt studies. Earth Surface Processes and Landforms, 25, p 649-658.
52+
53+
Use of this model in a publication should be accompanied by a citation to
54+
the aforementioned reference and to this repository.
55+
56+
57+
58+
59+
60+
61+

Samplmet.xls

15.5 KB
Binary file not shown.

0 commit comments

Comments
 (0)