ISTA Internship at Prof. Tim Vogels group
Project title: Cross-Implementation and Verification in Brian2 of the Dynamic Engrams Consolidation Model
Internship dates: June - September 2025
This project is a verification of a memory consolidation simulation with a Spiking Neural Networks (SNN) model implemented in Brian2 (Python), originally defined in Auryn (C++) in:
- Tomé, D.F., Zhang, Y., Aida, T. et al. (2024)
Dynamic and selective engrams emerge with memory consolidation.
Nature Neuroscience 27, 561–572
https://doi.org/10.1038/s41593-023-01551-w
/analysis/ # Functions for analyzing simulation outputs
/config/ # Global parameters and save utilities
/model/ # Core neuron and synapse models
/network/ # Network construction and connectivity functions
/scripts/ # Main execution scripts
generate_stim_input_map.py
monitor_stable_activity.py
run_many.sh
simulate_and_probe.py
/src/ # Simulations' outputs
/stimuli/ # Stored external input patterns
squarev5_cues_1-4.pat
squarev5.pat
requirements.txt
1_activity_plots.ipynb
2_probing_n_recall_plots.ipynb
- Create and activate a virtual environment
python -m venv venv
source venv/bin/activate- Install dependencies
pip install -r requirements.txt- Generate the receptive field (stimulus → input map)
python -m scripts.generate_stim_input_map- Run the pipeline
python -m scripts.simulate_and_probeNote
To run only the burn-in phase with monitors recording the activity of both excitatory and inhibitory populations:
python -m scripts.monitor_stable_activityThe notebook 2_probing_n_recall_plots.ipynb loads and visualizes the data saved by the main simulation. Whereas, the notebook 1_activity_plots.ipynb loads the data generated by the only burn-in simulation.
All scripts should be executed from the project root so that relative imports work correctly.