Difference for src/colvarcomp.C from version 1.12 to 1.13

version 1.12version 1.13
Line 48
Line 48
   get_keyval(conf, "period", period, 0.0);   get_keyval(conf, "period", period, 0.0);
   get_keyval(conf, "wrapAround", wrap_center, 0.0);   get_keyval(conf, "wrapAround", wrap_center, 0.0);
  
   // All cvcs implement this 
   provide(f_cvc_debug_gradient); 
   get_keyval_feature((colvarparse *)this, conf, "debugGradients",   get_keyval_feature((colvarparse *)this, conf, "debugGradients",
                      f_cvc_debug_gradient, false, parse_silent);                      f_cvc_debug_gradient, false, parse_silent);
  
Line 81
Line 79
     agi++;     agi++;
     for ( ; agi != atom_groups.end(); agi++) {     for ( ; agi != atom_groups.end(); agi++) {
       if ((*agi)->b_dummy) {       if ((*agi)->b_dummy) {
         set_available(f_cvc_inv_gradient, false);         provide(f_cvc_inv_gradient, false);
         set_available(f_cvc_Jacobian, false);         provide(f_cvc_Jacobian, false);
       }       }
     }     }
   }   }
Line 96
Line 94
                                           bool optional)                                           bool optional)
 { {
   cvm::atom_group *group = NULL;   cvm::atom_group *group = NULL;
    std::string group_conf;
  
   if (key_lookup(conf, group_key)) {   if (key_lookup(conf, group_key, &group_conf)) {
     group = new cvm::atom_group;     group = new cvm::atom_group;
     group->key = group_key;     group->key = group_key;
  
     if (b_try_scalable) {     if (b_try_scalable) {
       // TODO rewrite this logic in terms of dependencies       if (is_available(f_cvc_scalable_com) && is_enabled(f_cvc_com_based)) {
       if (is_available(f_cvc_scalable_com) && is_available(f_cvc_com_based)) { 
         enable(f_cvc_scalable_com);         enable(f_cvc_scalable_com);
         enable(f_cvc_scalable);         enable(f_cvc_scalable);
         // The CVC makes the feature available;         // The CVC makes the feature available;
Line 114
Line 112
       // TODO check for other types of parallelism here       // TODO check for other types of parallelism here
     }     }
  
     if (group->parse(conf) == COLVARS_OK) {     if (group_conf.size() == 0) {
        cvm::error("Error: atom group \""+group->key+
                   "\" is set, but has no definition.\n",
                   INPUT_ERROR);
        return group;
      }
  
      cvm::increase_depth();
      if (group->parse(group_conf) == COLVARS_OK) {
       atom_groups.push_back(group);       atom_groups.push_back(group);
     } else {     }
      group->check_keywords(group_conf, group_key);
      if (cvm::get_error()) {
       cvm::error("Error parsing definition for atom group \""+       cvm::error("Error parsing definition for atom group \""+
                          std::string(group_key)+"\".\n");                  std::string(group_key)+"\"\n.", INPUT_ERROR);
     }     }
      cvm::decrease_depth();
  
   } else {   } else {
     if (! optional) {     if (! optional) {
       cvm::error("Error: definition for atom group \""+       cvm::error("Error: definition for atom group \""+
                       std::string(group_key)+"\" not found.\n");                       std::string(group_key)+"\" not found.\n");
     }     }
   }   }
  
   return group;   return group;
 } }
  


Legend:
Removed in v.1.12 
changed lines
 Added in v.1.13



Made by using version 1.53 of cvs2html