Assignment
ODEs in 1D: Spruce Budworm model
Implement the complete Streamlit application for the Spruce Budworm model as described here, following the sections from Implementing the ODE Function through Building the Streamlit Application. Ensure that all functions are correctly defined and integrated into the app. Test the application thoroughly to confirm that it behaves as expected.
Answer at least three of the exploration questions from Exploration Questions and document your findings in a brief report (1-2 pages). You are encouraged to use LaTeX here. Include graphs demonstrating different behaviors observed during your exploration.
If you want to go the extra mile, here are some additional challenges you can tackle:
- Create a GitHub repository for your project and push your code there. You can include the text of your report in the repository as well.
- Deploy your Streamlit app using Streamlit Cloud or another hosting service. Share the link in your report.
- Implement some of the advanced features mentioned in Building the Streamlit Application.
- Instead of using SciPy’s built-in ODE solver, implement your own simple Euler or Runge-Kutta integrator and compare results.
Tips for Success
- Start simple: Get Implementing the ODE Function working first, then build up.
- Test incrementally: Verify each function works before moving to the next.
- Use the reference: The provided code (and additional documentation) is there to help you understand the structure.
- Experiment: Try different parameter values and see what happens.
- Collaborate: Discuss with your teammates, divide the work if needed. You can also work separately and then compare your implementations.
- Ask questions: If you’re stuck, ask for help!
Good luck and enjoy your coding!