fixed incorrect table allocation
[alexxy/gromacs.git] / src / mdlib / gmx_qhop_db_test.c
1 /* -*- mode: c; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; c-file-style: "stroustrup"; -*-
2  * 
3  *                This source code is part of
4  * 
5  *                 G   R   O   M   A   C   S
6  * 
7  *          GROningen MAchine for Chemical Simulations
8  * 
9  *                        VERSION 4.5
10  * Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
11  * Copyright (c) 1991-2000, University of Groningen, The Netherlands.
12  * Copyright (c) 2001-2008, The GROMACS development team,
13  * check out http://www.gromacs.org for more information.
14  
15  * This program is free software; you can redistribute it and/or
16  * modify it under the terms of the GNU General Public License
17  * as published by the Free Software Foundation; either version 2
18  * of the License, or (at your option) any later version.
19  * 
20  * If you want to redistribute modifications, please consider that
21  * scientific software is very special. Version control is crucial -
22  * bugs must be traceable. We will be happy to consider code for
23  * inclusion in the official distribution, but derived work must not
24  * be called official GROMACS. Details are found in the README & COPYING
25  * files - if they are missing, get the official version at www.gromacs.org.
26  * 
27  * To help us fund GROMACS development, we humbly ask that you cite
28  * the papers on the package - you can find them in the top README file.
29  * 
30  * For more info, check our website at http://www.gromacs.org
31  * 
32  * And Hey:
33  * Groningen Machine for Chemical Simulation
34  */
35 #ifdef HAVE_CONFIG_H
36 #include <config.h>
37 #endif
38
39 #include <stdio.h>
40 #include <stdlib.h>
41 #include "gmx_fatal.h"
42 #include "macros.h"
43 #include "gmx_qhop_db.h"
44
45 int main(int argc,char *argv[])
46 {
47   gmx_qhop_db db;
48   char *donors[] = { "H3O+", "ACE" };
49   char *acceptors[] = { "H2O", "GLU" };
50   t_qhop_parameters qp;
51   int i,j;
52   
53   if ((db = gmx_qhop_db_read("ffoplsaa")) == NULL) 
54     gmx_fatal(FARGS,"Can not read qhop database information");
55   if (gmx_qhop_db_write("koe.dat",db) != 1)
56     gmx_fatal(FARGS,"Can not write qhop database information");
57   
58   for(i=0; (i<asize(donors)); i++) {
59     for(j=0; (j<asize(acceptors)); j++) {
60       if (gmx_qhop_db_get_parameters(db,donors[i],acceptors[j],&qp) == 1) {
61         printf("Found qhop parameters for donor %s and acceptor %s\n",
62                donors[i],acceptors[j]);
63       }
64       else {
65         printf("Could not find qhop parameters for donor %s and acceptor %s\n",
66                donors[i],acceptors[j]);
67       }
68     }
69   }
70   
71   if (gmx_qhop_db_done(db) != 1)
72     gmx_fatal(FARGS,"Error destroying qhop data");
73     
74   return 0;
75 }