
Community-based assistance
simuPOP is a powerful and flexible simulation environment. However, learning how to write simulations in Python can be a daunting job especially if you are not familiar with Python. If you have a clear idea about your simulation scenario, you can
- Search the simuPOP online cookbook and the simuPOP mailinglist and see if you could find anything interesting.
- Read, or at least scan through, the simuPOP user's guide and see if you can find any example that matches your need. You may find that simuPOP is easy to use and gain some confidence in writing your own script.
- If you have specific question, please feel free to send an email to the simuPOP mailinglist. Your questions are usually answered promptly. You can also send a description of your simulation and ask if anyone else have done anything similar.
- If you can not get enough help from the simuPOP community, you can contact me directly and seek for collaboration-based assistance.
Collaboration-based assistance
Whereas it is relatively easy to answer specific questions in the simuPOP mailinglist, drafting or writing complete scripts will take more time than I can usually afford. As much as I would like to help simuPOP users, I have only limited time and cannot possibly honor all requests for help. In order to promote greater use of simuPOP and help the growth of the simuPOP community, I will select a number of projects and provide one or more of the following services:
- Script drafting and review. I can draft a working template for a particular evolutionary process and review your scripts for correctness and performance during the development of your simulation, under the condition that you agree to describe your simulation and upload your script (excluding real data and things you do not want to publicize) to the simuPOP online cookbook after your project is finished. It is your responsibility to test and perform your simulations.
- Provide simuPOP scripts for teaching purposes. Because I am particularly interested in applying simuPOP to population and evolutionary genetics classes, I will be able to implement small simuPOP scripts for teaching purposes. Please send me the syllabus of your course and models that you would like to demonstrate if you are interested. These scripts will be made available to the simuPOP online cookbook.
- Design and implement particular evolutionary processes. If you need help in implementing an evolutionary process because you do not have time to program in Python, I can design and implement particular evolutionary processes for you if prior arrangements such as authorship of potential publications can be made. This can be the quickest and best way to get your simulations running, especially when your simulation is fairly complicated. Although you usually need to conduct your own simulations, a strong collaboration may allow you to make use of our supercomputers.
Selection of projects will be based on the significance of your project and my research interest. To successfully compete for collaboration-based assistance, please email me a detailed description of your project (not only your simulation) and your plan for collaboration (e.g. time frame, who will be involved, whether or not you will eventually learn and write simuPOP scripts). Although not strictly required, descriptions of your accomplishments and interests (e.g. a CV), your research environment (e.g. your research group) can be useful. A letter from your mentor will certainly help if you are a graduate student.