Subject: data structure for coding

From: "J. Zheng" <[email-masked]>
Date: Thu, 18 Jul 2002 23:09:38 -0700 (PDT)

hi CCLers:

  I have a general question about data structure of program. Now I am
involving a biological system which contains protein, water, ion and
surface by using MD technique. What I want is to code a general FORTRAN
program which can deal with single or multiple component system.

 For example, if the system contains protein, water, ion and surface,
it is very straightforward to assign different components with different
arrays,
e.g.

  x(n),v(n),a(n) represent protein coordinate,velocity and acceleration.
  wx(3,n),wv(3,n),wa(3,n) represent water coor., velo. and acce.
  ionx(n),ionv(n),iona(n) represent ion coor., velo. and acce.
  ...

  Now, I am wonder that

1) is that data structure suitable to deal with biological systems?
2) how other softwares such as CHARMM, AMBER or GROMACS to handle such
systems.

   I will appreciate your any suggestion. thanks.

 Jie

 -----------------------------------------------
|  JIE ZHENG                          	      |
|  Department of Chemical Engineering	      |
|  University of Washington		      |
|  Seattle, WA 98105, USA   		      |
-----------------------------------------------
|  Tel:  (206) 616-6510 (o)		      |
| Email: [email-masked]	      |
| Webpg: students.washington.edu/jzheng73     |
-----------------------------------------------

---

From: Richard Gillilan <[email-masked]>
Date: Fri, 19 Jul 2002 07:54:54 -0400

JIE:

  In my opinion, it is far better to use C++ if you 
want good modern data structures. 
(Some may suggest using Python script for the user
interface and C or C++ under ... this is also good,
but one must be aware of the memory and performance
limitations of Python). If you work carefully,
performance with C++ can be quite good and the code will be 
much easier for others to maintain and improve (than FORTRAN)
in the future. You can even check out VMD/NAMD or similar 
freely-available, open codes that will probably already 
do what you want ... in parallel.

I'm sure you will hear many opionions on this.

Richard Gillilan
MacCHESS
Cornell

---

From: Konrad Hinsen <[email-masked]>
Date: 19 Jul 2002 15:47:27 +0200

> 1) is that data structure suitable to deal with biological systems?

It's as good as many others. However, the difficulty of biological  
systems lies elsewhere. The rather complex force fields require
a considerable effort to prepare energy evaluations, and rather
complex data structures for energy terms.

If you want to write a simulation program from scratch for dealing
with biological systems, plan a lot of time for that. I also
do not recommend using Fortran, which is not well equipped
to handle the complex data structures.

You might be better off starting with existing code that already
does much of the work. I am aware of two codes that can handle
biomolecules and that are OpenSource software, i.e. permit you
to make your own modifications and pass them on to others:
GROMACS (www.gromacs.org), written in C, and my own
Molecular Modelling Toolkit (dirac.cnrs-orleans.fr/MMTK/),
written in a mixture of Python and C.
-- 
-------------------------------------------------------------------------------
Konrad Hinsen                            | E-Mail: [email-masked]
Centre de Biophysique Moleculaire (CNRS) | Tel.: +33-2.38.25.56.24
Rue Charles Sadron                       | Fax:  +33-2.38.63.15.17
45071 Orleans Cedex 2                    | Deutsch/Esperanto/English/
France                                   | Nederlands/Francais
-------------------------------------------------------------------------------