At a glance
Individual or pairs · two class periods of work time — Unit 2, Days 5 and 11 · Format: a working program plus a short write-up of what it shows and where it lies
If you work in a pair you may share one program. The written part is yours alone, and it is what carries the marks.
The task
Write a program that models a scientific relationship you have studied, and use it to answer a question you could not easily answer by hand.
Starting point
# Model the energy remaining at each trophic level.
def energy_at_levels(starting_energy, transfer_rate, levels):
# Return the energy available at each trophic level.
remaining = starting_energy
results = []
for level in range(levels):
results.append(remaining)
remaining = remaining * transfer_rate
return results
amounts = energy_at_levels(10000, 0.10, 5)
for index in range(len(amounts)):
print("Level", index + 1, ":", round(amounts[index], 2), "kJ")Choose one
| Model | The question it answers |
|---|---|
| Energy pyramid | How many trophic levels can an ecosystem support? |
| Ohm’s law calculator | What resistance is needed for a given current? |
| Radioactive decay | How much remains after half-lives? |
| Orbital periods | How does period change with distance? |
| Population growth | What happens when a limit is introduced? |
Requirements
- At least one loop and one function
- Inputs the user can change without editing the code
- Output that is readable — labels and units, not bare numbers
- Comments explaining the science, not the syntax
- A run with at least three different inputs, results recorded
The written part
- What relationship does your model represent? Give the equation.
- What did you learn by changing the inputs that you would not have seen otherwise?
- Where does your model stop being realistic? Every model has a limit — find yours and state it.
Do not confuse a calculator with a model
Computing one answer is arithmetic. A model lets you ask “what if?” repeatedly and see a pattern in the answers. Aim for the second.
Success criteria
| Quality | What it looks like in your work |
|---|---|
| The science is in the code | Comments say what a quantity means and where the relationship comes from — not what the line of Python does |
| It can be asked more than one question | Inputs change without editing the code, and three different runs are recorded with their results |
| Output somebody else could read | Every printed number carries a label and a unit |
| The relationship is named | The written part states the equation the model stands for, the way you would write it on paper |
| A limit that is genuinely found | One specific input, or range of inputs, where the model stops describing anything real — and the reason |
Curriculum connection
A1.4
apply coding skills to investigate and to model scientific concepts and relationships
Link to original