Add gmx dump option for printing parameters
[alexxy/gromacs.git] / src / gromacs / topology / topology.cpp
index 27eed7a3c3a2a5d60c8792a495e4015356b5919e..f113900e1364fc4a16b534b5de5581b7234588ec 100644 (file)
@@ -317,7 +317,7 @@ static void pr_groups(FILE *fp, int indent,
 static void pr_moltype(FILE *fp, int indent, const char *title,
                        const gmx_moltype_t *molt, int n,
                        const gmx_ffparams_t *ffparams,
-                       gmx_bool bShowNumbers)
+                       gmx_bool bShowNumbers, gmx_bool bShowParameters)
 {
     int j;
 
@@ -330,7 +330,8 @@ static void pr_moltype(FILE *fp, int indent, const char *title,
     for (j = 0; (j < F_NRE); j++)
     {
         pr_ilist(fp, indent, interaction_function[j].longname,
-                 ffparams->functype, &molt->ilist[j], bShowNumbers);
+                 ffparams->functype, &molt->ilist[j],
+                 bShowNumbers, bShowParameters, ffparams->iparams);
     }
 }
 
@@ -357,7 +358,7 @@ static void pr_molblock(FILE *fp, int indent, const char *title,
 }
 
 void pr_mtop(FILE *fp, int indent, const char *title, const gmx_mtop_t *mtop,
-             gmx_bool bShowNumbers)
+             gmx_bool bShowNumbers, gmx_bool bShowParameters)
 {
     int mt, mb, j;
 
@@ -380,7 +381,8 @@ void pr_mtop(FILE *fp, int indent, const char *title, const gmx_mtop_t *mtop,
             {
                 pr_ilist(fp, indent, interaction_function[j].longname,
                          mtop->ffparams.functype,
-                         &mtop->intermolecular_ilist[j], bShowNumbers);
+                         &mtop->intermolecular_ilist[j],
+                         bShowNumbers, bShowParameters, mtop->ffparams.iparams);
             }
         }
         pr_ffparams(fp, indent, "ffparams", &(mtop->ffparams), bShowNumbers);
@@ -388,13 +390,14 @@ void pr_mtop(FILE *fp, int indent, const char *title, const gmx_mtop_t *mtop,
         for (mt = 0; mt < mtop->nmoltype; mt++)
         {
             pr_moltype(fp, indent, "moltype", &mtop->moltype[mt], mt,
-                       &mtop->ffparams, bShowNumbers);
+                       &mtop->ffparams, bShowNumbers, bShowParameters);
         }
         pr_groups(fp, indent, &mtop->groups, bShowNumbers);
     }
 }
 
-void pr_top(FILE *fp, int indent, const char *title, const t_topology *top, gmx_bool bShowNumbers)
+void pr_top(FILE *fp, int indent, const char *title, const t_topology *top,
+            gmx_bool bShowNumbers, gmx_bool bShowParameters)
 {
     if (available(fp, top, indent, title))
     {
@@ -408,7 +411,7 @@ void pr_top(FILE *fp, int indent, const char *title, const t_topology *top, gmx_
         pr_str(fp, indent, "bIntermolecularInteractions",
                gmx::boolToString(top->bIntermolecularInteractions));
         pr_blocka(fp, indent, "excls", &top->excls, bShowNumbers);
-        pr_idef(fp, indent, "idef", &top->idef, bShowNumbers);
+        pr_idef(fp, indent, "idef", &top->idef, bShowNumbers, bShowParameters);
     }
 }