I modeled a student learning morse code with a Fortran program so that I could verify algorithms and optimize parameters a microprocessor based teaching program.
See Morse Code Teacher for the Wintek Control Module.
I modeled short term memory as a small store of recent acquisitions. New letters displaced old letters in this store.
I modeled long term memory as a large store that only acquired letters once they were retrieved multiple times out of short term memory. Occasional retrievals prevented the slow decay of long term memory.
Per-character error rates as reported by the microcontroller version for actual students.
I exercised this student using the practice text selection algorithm and new character introduction thresholds I intended to use with real students in my microprocessor version.
I found what parameters lead to the fastest learning. I also found what the measured student error rates per character would be and plotted them.
When I trained real students I compared their per character error rates with the simulated student to confirm that I was achieving results similar to the simulation.