Structural Bioinformatics (2011/2012)

Practical GK-2

Programming for structural bioinformatics

Aims

Objectives

After this practical you will:

Introduction

Template programs for reading and writing Protein Data Bank files, and libraries with routines for preforming geometrical calculations and for working with transformation matrices, are provided for you to use in your coursework.

Exercises

  1. This question gives you the opportunity to read, modify and compile a simple C program that reads a Protein Data Bank file.

    1. Copy the files from the directory /chalmers/users/kemp/TDA506/practical2/question1 into a new directory of your own.

      Follow the instruction in file README.

    2. Modify the program pdb_io.c so that it prints out a mirror-reversed version the protein crambin by writing out the value of -x as the x coordinate (instead of the value of x). Comment out the other output statements in the program. Recompile the program, then run it, redirecting standard output to a file, e.g.

      unix> make pdb_io
      unix> ./pdb_io 1CRN.pdb > reversed.pdb
      

      View this "nonsense" reversed protein in RasMol.

    3. Program atom_array.pdb reads the ATOM data from a PDB file into an array of Atom record structures, then writes data from the array to standard output. Compile and run that program:

      unix> make atom_array
      unix> ./atom_array 1CRN.pdb
      
    4. Program residue_array.pdb reads the ATOM data from a PDB file into an array of Residue record structures, then writes data from the array to standard output. Compile and run that program:

      unix> make residue_array
      unix> ./residue_array 1CRN.pdb
      
    5. Remove those files that can be recompiled from the source code:

      unix> make clean
      
  2. This question gives you the opportunity to compile C programs that use the geometry and transformation libraries.

    Copy the files from the directory /chalmers/users/kemp/TDA506/practical2/question2 into a new directory of your own.

    Read the important note in the README file.

    Compile and run each of the example programs:


Last Modified: 15 January 2012 by Graham Kemp