added selectable constants
authorAnatoly Titov <toluk@omrb.pnpi.spb.ru>
Mon, 6 Feb 2017 13:54:40 +0000 (16:54 +0300)
committerAnatoly Titov <toluk@omrb.pnpi.spb.ru>
Mon, 6 Feb 2017 13:54:40 +0000 (16:54 +0300)
src/domains.cpp

index 234b1d60331124d9c409d8cc5b891ed7ec38e71a..0f46e6285f7914b5f943a14d62fb8559834203bf 100644 (file)
@@ -249,8 +249,8 @@ class Domains : public TrajectoryAnalysisModule
         int                                                         frames              = 0;
         int                                                         etalon_frame        = 0; // should be selectable
         int                                                         domain_min_size     = 5; // should be selectable
-        const long double                                           delta               = 0.90; //0.95 // should be selectable
-        const long double                                           epsi                = 0.15; //0.3 колебания внутри домена // should be selectable
+        double                                                      delta               = 0.90; //0.95 // should be selectable
+        double                                                      epsi                = 0.15; //0.3 колебания внутри домена // should be selectable
         int                                                         domains_ePBC;
         // Copy and assign disallowed by base.
 };
@@ -278,8 +278,24 @@ Domains::initOptions(IOptionsContainer          *options,
                            .description("Atoms that are considered as part of the excluded volume"));
     // Add option for output file name
     options->addOption(FileNameOption("on").filetype(eftIndex).outputFile()
-                               .store(&fnNdx_).defaultBasename("domains")
-                               .description("Index file from the domains"));
+                            .store(&fnNdx_).defaultBasename("domains")
+                            .description("Index file from the domains"));
+    // Add option for etalon_frame constant
+    options->addOption(gmx::IntegerOption("etalon_frame")
+                            .store(&etalon_frame)
+                            .description("basic frame to base evaluation on"));
+    // Add option for etalon_frame constant
+    options->addOption(gmx::IntegerOption("dms")
+                            .store(&domain_min_size)
+                            .description("minimum domain size"));
+    // Add option for epsi constant
+    options->addOption(DoubleOption("epsilon")
+                            .store(&epsi)
+                            .description("thermal vibrations' constant"));
+    // Add option for delta constant
+    options->addOption(DoubleOption("delta")
+                            .store(&delta)
+                            .description("domain membership probability"));
     // Control input settings
     settings->setFlags(TrajectoryAnalysisSettings::efNoUserPBC);
     settings->setPBC(true);