Patterns in scientific software: an introduction · Study