EEPS 3230 Biogeochemistry — Spring 2026
- Assignment Instructions — What to do
- Git & GitHub Guide — How to submit (start here if new to Git!)
- Grading — How you'll be evaluated
In this homework, you will extend a three-box terrestrial carbon cycle model to explore how feedbacks shape the global carbon cycle. You will:
- Calibrate the model against synthetic atmospheric CO2 data
- Add a feedback mechanism (choose one of three options)
- Design emission scenarios using the built-in scenario selector
See the full assignment handout (HW1_Terrestrial_Carbon.docx on Canvas) for detailed instructions.
| File | Description |
|---|---|
hw1_starter.stmx |
Your starting model — make a copy with your name |
README.md |
This file |
Your completed model file: hw1_yourname.stmx
Commit and push this file to your repository before the deadline.
If you're new to Git and GitHub, don't worry! This section walks you through everything step by step.
Git is a version control system that tracks changes to your files over time. Think of it like "track changes" in Word, but much more powerful:
- See the history of every change you've made
- Go back to earlier versions if something breaks
- Safely experiment without losing your work
GitHub is a website that hosts your Git repositories online, allowing you to:
- Submit assignments
- Back up your work
- Collaborate with others (in future courses)
If you don't already have one:
- Go to github.com
- Click Sign up
- Use your
@wustl.eduemail (you get free Pro features with a student account!) - Choose a professional username (employers may see this someday)
Mac:
- Open Terminal (Applications → Utilities → Terminal)
- Type
git --versionand press Enter - If not installed, you'll be prompted to install it (click Install)
Windows:
- Download Git from git-scm.com
- Run the installer (accept all defaults)
- Use "Git Bash" for running Git commands
Open Terminal (Mac) or Git Bash (Windows) and run these commands, replacing with your info:
git config --global user.name "Your Name"
git config --global user.email "your.email@wustl.edu"- Click the GitHub Classroom assignment link (on Canvas)
- Authorize GitHub Classroom if prompted
- Find your name in the roster and click it
- Click Accept this assignment
- Wait for your personal repository to be created
- Click the repository link to open it
"Cloning" downloads the repository to your computer.
- On your repository page, click the green Code button
- Copy the HTTPS URL
- Open Terminal/Git Bash and navigate to where you want to work:
cd ~/Documents
- Clone the repository:
git clone https://github.com/washu-eeps/hw1-yourname.git
- Enter the folder:
cd hw1-yourname
- Open
hw1_starter.stmxin Stella - Save As →
hw1_yourname.stmx(use your actual name!) - Complete the assignment following the handout
- Save your work frequently
As you work, you can save "snapshots" of your progress. This is useful if you want to go back to an earlier version.
Check what's changed:
git statusSave a snapshot (commit):
git add hw1_yourname.stmx
git commit -m "Completed Part 1 calibration"The message in quotes describes what you changed. Make it meaningful!
Example workflow:
# After completing calibration
git add hw1_yourname.stmx
git commit -m "Calibrated GPP_base to 110"
# After adding feedback mechanism
git add hw1_yourname.stmx
git commit -m "Added Q10 temperature feedback"
# After finishing scenarios
git add hw1_yourname.stmx
git commit -m "Implemented 3 emission scenarios"When you're ready to submit, "push" your commits to GitHub:
git pushYou may be asked for your GitHub username and password. For the password, you'll need a Personal Access Token (GitHub no longer accepts regular passwords):
- Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
- Click Generate new token (classic)
- Give it a name like "EEPS 3230"
- Select the
reposcope - Click Generate token
- Copy the token immediately (you won't see it again!)
- Use this token as your password when pushing
Tip: On Mac, you can store credentials in Keychain. On Windows, Git Credential Manager should handle this automatically after the first push.
After pushing:
- Go to your repository on GitHub
- Confirm your
.stmxfile is there - Click on Actions to see if the autograder ran
- A green checkmark means all checks passed!
| Command | What it does |
|---|---|
git status |
Show what files have changed |
git add filename |
Stage a file for commit |
git commit -m "message" |
Save a snapshot with a description |
git push |
Upload your commits to GitHub |
git pull |
Download updates from GitHub |
git log --oneline |
See your commit history |
- Make sure you're using a Personal Access Token, not your password
- Check that you accepted the assignment and the repo is yours
- Run
git pullfirst, thengit push
- If you haven't committed yet: just fix the file and save
- If you committed but haven't pushed: ask for help (we can undo it)
- If you already pushed: make another commit with the fix (that's fine!)
- The
.gitignorefile should prevent.stmx~files from being tracked - If you see them, don't add them to Git
Your model will be automatically checked for required elements:
| Component | Weight |
|---|---|
| Base model structure | 20% |
| Calibration | 25% |
| Feedback mechanism | 25% |
| Scenario design | 20% |
| Mass conservation | 10% |
All students:
- Stocks:
Atmosphere,Vegetation,SOM - Flows:
GPP,Autotrophic_Respiration,Litterfall,Heterotrophic_Respiration,Emissions - Converters:
GPP_base,Scenario,Total_Carbon,RMSE
Plus one feedback set:
- Option A:
Temperature,Q10,T_ref - Option B:
Available_N,Kn - Option C:
Deforestation_Rate+Deforestationflow
- Office hours: Check Canvas for times
- Ed Discussion: Post questions there
- Git issues: Come to office hours — we'll help you debug!
Class 12 — Check Canvas for the exact date and time.
EEPS 3230 Biogeochemistry — Washington University in St. Louis