C++ for Biologists

Faculteit Science and Engineering
Jaar 2019/20
Vakcode WBLS19009
Vaknaam C++ for Biologists
Niveau(s) bachelor
Voertaal Engels
Periode semester I b
Rooster rooster.rug.nl

Uitgebreide vaknaam C++ for Biologists
Leerdoelen The student is able to:
1 Demonstrate sufficient working knowledge of the syntax rules of C ++ to be able to assemble simple simulation algorithms
2 Write code using a consistent programming style that complies with the quality standards for the documentation of scientific work
3 Use professional resources for debugging, optimization and code development
4 Design a simulation algorithm to address a given biological research question, and reflect on the biological implications of simulation results
Omschrijving This course, which is specifically designed for biology students, teaches the participants how to develop software in the programming language C ++ . Special emphasis is given to the implementation of biological models, using individual-based simulations, numerical solution of ordinary differential equations and other computational methods for model analysis. The course is accessible to students irrespective of their previous programming experience; the primary target audience consists of students with no prior background in programming.
These students use the first two weeks of the course to become familiar with the essentials of the C ++ programming language, such as:
• Procedural programming: data types, operators, program flow and functions
• Elementary applications of the Standard Template Library
• Data input & generation of output including statistics like mean and standard deviation
The third week of the course is devoted to:
• Program design, algorithms and debugging
• Deterministic simulation techniques for biological models
• Pseudo-random numbers and stochastic simulations
Students who already possess basic C ++ programming skills, or students who are already familiar with another programming language can participate in an advanced track, which runs in parallel as part of the MSc variant of the course. For these students the course covers:
• A brief review of procedural programming techniques and elementary C ++
• Pointers, templates and advanced applications of the Standard Template Library
• Object-oriented programming
• Individual-based simulation techniques
Students who would like to apply their newly acquired programming skills to a biological modelling project can do so in the research course Modeling in the Life Sciences Research, which immediately follows the course unit. A self-study variant of the course is available for motivated students who are unable to follow the course in a classroom setting due to scheduling constraints.
Uren per week
Onderwijsvorm Hoorcollege (LC), Practisch werk (PRC)
(The final grade is based on the marks for the three weekly programming assignments (each determining 1/3 of the final grade). Regular attendance (>80%) of the practicals and all assignments. Assignment grade = (2 x score for correctness + 2 x score for quality + score for style) / 5)
Toetsvorm Practisch werk (PR)
Vaksoort bachelor
Coördinator prof. dr. G.S. van Doorn
Docent(en) dr. J. Bakker ,prof. dr. G.S. van Doorn ,prof. dr. F.J. Weissing
Verplichte literatuur
Titel Auteur ISBN Prijs
Course manual with study material, exercises and solutions.
Opmerkingen The course unit Programming C ++ for Biologists is open to all students, and is a recommended element of the minor Modelling in the Life Sciences. Most of the students have been superficially exposed to computational modelling in their curriculum (e.g., by reading theory papers from the scientific literature), but few of them have received previous in-depth training in this area. Moreover, many of the students come to the course without background in informatics, computer science and numerical mathematics. No specific entry requirements have been formulated for the course, except for elementary computer literacy. The course unit offers an ideal preparation for students who wish to develop a simulation project (with or without an associated BSc thesis) in the research course Modelling in the Life Sciences Research. The course also integrates seamlessly with the MSc level variant of Programming C ++ for Biologists, which covers advanced programming skills, object-oriented programming and individual-based simulation.
Opgenomen in
Opleiding Jaar Periode Type
BSc Biologie: Major Ecologie & Evolutie (cohort 2016 en 2017)  (Minor Ecologie & Evolutie) 3 semester I b keuzegroep
BSc Biology: major Ecology and Evolution 2 semester I b keuzegroep
BSc Biology: major Integrative Biology 2 semester I b keuzegroep
Minor Modelling in the Life Sciences 3 semester I b verplicht