Indiana University
  •  
  •  
  •  

What is MIGRATE, and how can I use it on Quarry?

About MIGRATE

The program MIGRATE can use genotypes of individuals to form clusters that represent populations, assign individuals to populations, and describe genotypes of individuals in terms of populations from which they were derived. It applies maximum likelihood and Bayesian analysis.

For information about MIGRATE packages, see the migrate home page and the migrate manual (PDF format). An example data set is available on Quarry in /N/soft/linux-rhel4-x86_64/migrate/example.

Using MIGRATE on Quarry

At Indiana University, MIGRATE is available on Quarry. Accounts on Quarry are available to all IU students, faculty, and staff, as well as affiliated researchers. Instructional use is limited to courses approved by the Director for Research Technologies. If you use Quarry, you need to know the Quarry usage policies.

To use MIGRATE on Quarry:

  1. Request a Quarry account
  2. Set up SoftEnv and submit jobs
  3. Pass options to migrate

Request a Quarry account

To request a Quarry account, use the Account Management System (AMS); see Instructions for getting more computing accounts at IU For more, see Getting started on Quarry.

Set up SoftEnv and submit jobs

  1. To set up your SoftEnv, edit your .soft file to add the line +migrate and execute the resoft command.

  2. Create a directory that contains all the datafiles and parmfiles.

  3. If your job will run for fewer than 20 minutes, call migrate-n in the directory where your input files are.

    If your job will take longer than 20 minutes, edit a TORQUE (PBS) script in the directory where your input files are (for example, using vi). Following is an example:

    #PBS -l ncpus=1 #PBS -l mem=1GB #PBS -l cput=1:00:00 #PBS -e log.err #PBS -o log.out #PBS -m abe cd $PBS_O_WORKDIR /bin/echo "Y\n" | migrate-n parmfile.testml
  4. To submit your script to run as a batch job, enter the following at the command prompt: qsub pbs.job

    Replace pbs.job with the name of your script.

Output that MIGRATE would normally print to the screen is stored in the outfile-ml and outfile-ml.pdf files.

Pass options to MIGRATE

To run MIGRATE from your shell, you will need to run the following command at the prompt:

serialjob '/bin/echo "Y\n" | migrate-n parmfile.testml'

Also, you will have to pass options to MIGRATE. If you have the rights to configure your three files, you can turn an interactive MIGRATE program into a batch job by creating a file that contains the options you need to pass. To do so, create a text file that contains your options, one option per line, or combine all the options on the command line and pipe them to MIGRATE.

For example, if the default option is Y, which you need to enter to keep the MIGRATE program running, your option file would have only one line, containing the letter Y. If you name the text file optionfile, the command would be:

serialjob 'cat optionfile | migrate-n parmfile.testml'

Alternatively, you can echo the option and pipe it to MIGRATE:

/bin/echo "Y\n" | migrate-n parmfile.testml

To pass a series of options, use newline (\n) to separate them onto different lines:

serialjob '/bin/echo "Y\nD\n3\nY\n" | migrate-n parmfile.testml'