Lines Matching refs:cvcs

134     std::sort(cvcs.begin(), cvcs.end(), compare);  in init()
136 if(cvcs.size() > 1) { in init()
138 for (i = 0; i < cvcs.size(); i++) { in init()
139 cvm::log(cvm::to_str(i+1) + " " + cvcs[i]->name); in init()
145 for (i = 0; i < cvcs.size(); i++) { in init()
146 sorted_cvc_values.push_back(&(cvcs[i]->value())); in init()
151 colvarvalue const &cvc_value = (cvcs[0])->value(); in init()
173 for (i = 0; i < cvcs.size(); i++) { in init()
180 if ((cvcs[i])->sup_np != 1) { in init()
187 if ((cvcs[i])->sup_np < 0) { in init()
191 (cvcs[i])->function_type+"\" approaches zero.\n"); in init()
204 for (i = 0; i < cvcs.size(); i++) { in init()
205 if (cvm::fabs(cvm::fabs(cvcs[i]->sup_coeff) - 1.0) > 1.0e-10) { in init()
213 if ((cvcs.size() == 1) && is_enabled(f_cv_homogeneous)) { in init()
215 (cvm::fabs(cvcs[0]->sup_coeff - 1.0) < 1.0e-10) && in init()
216 (cvcs[0]->sup_np == 1) ) { in init()
225 if (is_enabled(f_cv_homogeneous) && cvcs[0]->is_enabled(f_cvc_periodic)) { in init()
227 period = cvcs[0]->period; in init()
228 wrap_center = cvcs[0]->wrap_center; in init()
229 for (i = 1; i < cvcs.size(); i++) { in init()
230 if (!cvcs[i]->is_enabled(f_cvc_periodic) || cvcs[i]->period != period) { in init()
252 for (i = 0; i < cvcs.size(); i++) { in init()
255 …(f_cv_scripted) || is_enabled(f_cv_custom_function)) && (colvarvalue::check_types(cvcs[i]->value(), in init()
256 cvcs[0]->value())) ) { in init()
266 for (i = 0; i < cvcs.size(); i++) { in init()
267 active_cvc_square_norm += cvcs[i]->sup_coeff * cvcs[i]->sup_coeff; in init()
302 if (is_enabled(f_cv_single_cvc) && cvcs[0]->function_type == "alch_lambda") { in init()
352 for (size_t i = 0; i < cvcs.size(); i++) { in init_custom_function()
353 for (size_t j = 0; j < cvcs[i]->value().size(); j++) { in init_custom_function()
354 std::string vn = cvcs[i]->name + in init_custom_function()
355 (cvcs[i]->value().size() > 1 ? cvm::to_str(j+1) : ""); in init_custom_function()
377 for (size_t i = 0; i < cvcs.size(); i++) { in init_custom_function()
378 for (size_t j = 0; j < cvcs[i]->value().size(); j++) { in init_custom_function()
379 std::string vn = cvcs[i]->name + in init_custom_function()
380 (cvcs[i]->value().size() > 1 ? cvm::to_str(j+1) : ""); in init_custom_function()
388 for (size_t k = 0; k < cvcs.size(); k++) { in init_custom_function()
389 for (size_t l = 0; l < cvcs[k]->value().size(); l++) { in init_custom_function()
390 std::string vvn = cvcs[k]->name + in init_custom_function()
391 (cvcs[k]->value().size() > 1 ? cvm::to_str(l+1) : ""); in init_custom_function()
495 if (is_enabled(f_cv_single_cvc) && cvcs[0]->is_enabled(f_cvc_width)) { in init_grid_parameters()
496 cvm::real const cvc_width = cvcs[0]->get_param("width"); in init_grid_parameters()
515 if (cvcs[0]->is_enabled(f_cvc_lower_boundary)) { in init_grid_parameters()
519 *(reinterpret_cast<colvarvalue const *>(cvcs[0]->get_param_ptr("lowerBoundary"))); in init_grid_parameters()
521 if (cvcs[0]->is_enabled(f_cvc_upper_boundary)) { in init_grid_parameters()
525 *(reinterpret_cast<colvarvalue const *>(cvcs[0]->get_param_ptr("upperBoundary"))); in init_grid_parameters()
757 cvcs.push_back(cvcp); in init_components_type()
791 if ( ! cvcs.back()->name.size()) { in init_components_type()
794 cvcs.back()->name = s.str(); in init_components_type()
798 cvcs.back()->setup(); in init_components_type()
804 ", named \""+cvcs.back()->name+"\"" in init_components_type()
809 cvm::log("Parsed "+cvm::to_str(cvcs.size())+ in init_components_type()
883 if (!cvcs.size() || (error_code != COLVARS_OK)) { in init_components()
891 for (i = 0; i < cvcs.size(); i++) { in init_components()
892 for (j = i+1; j < cvcs.size(); j++) { in init_components()
893 if (cvcs[i]->name == cvcs[j]->name) { in init_components()
895 " cannot have the same name \"" + cvcs[i]->name+ "\".\n", INPUT_ERROR); in init_components()
901 n_active_cvcs = cvcs.size(); in init_components()
904 for (i = 0; i < cvcs.size(); i++) { in init_components()
905 add_child(cvcs[i]); in init_components()
934 for (size_t i = 0; i < cvcs.size(); i++) { in build_atom_list()
935 for (size_t j = 0; j < cvcs[i]->atom_groups.size(); j++) { in build_atom_list()
936 cvm::atom_group const &ag = *(cvcs[i]->atom_groups[j]); in build_atom_list()
1190 for (size_t i = 0; i < cvcs.size(); i++) { in setup()
1191 for (size_t ig = 0; ig < cvcs[i]->atom_groups.size(); ig++) { in setup()
1192 cvm::atom_group *atoms = cvcs[i]->atom_groups[ig]; in setup()
1204 for (size_t i = 0; i < cvcs.size(); i++) { in get_atom_lists()
1205 std::vector<std::vector<int> > li = cvcs[i]->get_atom_lists(); in get_atom_lists()
1214 volmap_ids_.resize(cvcs.size()); in get_volmap_ids()
1215 for (size_t i = 0; i < cvcs.size(); i++) { in get_volmap_ids()
1216 if (cvcs[i]->param_exists("mapID") == COLVARS_OK) { in get_volmap_ids()
1218 *(reinterpret_cast<int const *>(cvcs[i]->get_param_ptr("mapID"))); in get_volmap_ids()
1237 for (std::vector<cvc *>::reverse_iterator ci = cvcs.rbegin(); in ~colvar()
1238 ci != cvcs.rend(); in ~colvar()
1246 cvcs.clear(); in ~colvar()
1372 if ((first_cvc < 0) || (first_cvc >= ((int) cvcs.size()))) { in check_cvc_range()
1394 (i < cvcs.size()) && (cvc_count < cvc_max_count); in calc_cvc_values()
1396 if (!cvcs[i]->is_enabled()) continue; in calc_cvc_values()
1398 (cvcs[i])->read_data(); in calc_cvc_values()
1399 (cvcs[i])->calc_value(); in calc_cvc_values()
1403 cvm::to_str((cvcs[i])->value(), in calc_cvc_values()
1436 for (size_t j = 0; j < cvcs.size(); j++) { in collect_cvc_values()
1437 for (size_t k = 0; k < cvcs[j]->value().size(); k++) { in collect_cvc_values()
1438 *(value_eval_var_refs[l++]) = cvcs[j]->value()[k]; in collect_cvc_values()
1447 for (size_t i = 0; i < cvcs.size(); i++) { in collect_cvc_values()
1448 if (!cvcs[i]->is_enabled()) continue; in collect_cvc_values()
1449 x += (cvcs[i])->sup_coeff * in collect_cvc_values()
1450 ( ((cvcs[i])->sup_np != 1) ? in collect_cvc_values()
1451 cvm::integer_power((cvcs[i])->value().real_value, (cvcs[i])->sup_np) : in collect_cvc_values()
1452 (cvcs[i])->value().real_value ); in collect_cvc_values()
1455 for (size_t i = 0; i < cvcs.size(); i++) { in collect_cvc_values()
1456 if (!cvcs[i]->is_enabled()) continue; in collect_cvc_values()
1457 x += (cvcs[i])->sup_coeff * (cvcs[i])->value(); in collect_cvc_values()
1495 (i < cvcs.size()) && (cvc_count < cvc_max_count); in calc_cvc_gradients()
1497 if (!cvcs[i]->is_enabled()) continue; in calc_cvc_gradients()
1500 if ((cvcs[i])->is_enabled(f_cvc_gradient)) { in calc_cvc_gradients()
1501 (cvcs[i])->calc_gradients(); in calc_cvc_gradients()
1504 (cvcs[i])->calc_fit_gradients(); in calc_cvc_gradients()
1505 if ((cvcs[i])->is_enabled(f_cvc_debug_gradient)) in calc_cvc_gradients()
1506 (cvcs[i])->debug_gradients(); in calc_cvc_gradients()
1527 for (i = 0; i < cvcs.size(); i++) { in collect_cvc_gradients()
1528 if (!cvcs[i]->is_enabled()) continue; in collect_cvc_gradients()
1529 cvcs[i]->collect_gradients(atom_ids, atomic_gradients); in collect_cvc_gradients()
1548 (i < cvcs.size()) && (cvc_count < cvc_max_count); in calc_cvc_total_force()
1550 if (!cvcs[i]->is_enabled()) continue; in calc_cvc_total_force()
1552 (cvcs[i])->calc_force_invgrads(); in calc_cvc_total_force()
1572 for (size_t i = 0; i < cvcs.size(); i++) { in collect_cvc_total_forces()
1573 if (!cvcs[i]->is_enabled()) continue; in collect_cvc_total_forces()
1577 cvm::to_str((cvcs[i])->total_force(), in collect_cvc_total_forces()
1580 ft += (cvcs[i])->total_force() * (cvcs[i])->sup_coeff / active_cvc_square_norm; in collect_cvc_total_forces()
1605 (i < cvcs.size()) && (cvc_count < cvc_max_count); in calc_cvc_Jacobians()
1607 if (!cvcs[i]->is_enabled()) continue; in calc_cvc_Jacobians()
1609 (cvcs[i])->calc_Jacobian_derivative(); in calc_cvc_Jacobians()
1622 for (size_t i = 0; i < cvcs.size(); i++) { in collect_cvc_Jacobians()
1623 if (!cvcs[i]->is_enabled()) continue; in collect_cvc_Jacobians()
1627 cvm::to_str((cvcs[i])->Jacobian_derivative(), in collect_cvc_Jacobians()
1630 fj += (cvcs[i])->Jacobian_derivative() * (cvcs[i])->sup_coeff / active_cvc_square_norm; in collect_cvc_Jacobians()
1778 f_system = cvcs[0]->total_force(); in update_forces_energy()
1843 cvcs[0]->set_value(x_ext); in update_forces_energy()
1893 func_grads.reserve(cvcs.size()); in communicate_forces()
1894 for (i = 0; i < cvcs.size(); i++) { in communicate_forces()
1895 if (!cvcs[i]->is_enabled()) continue; in communicate_forces()
1897 cvcs[i]->value().size())); in communicate_forces()
1911 for (i = 0; i < cvcs.size(); i++) { in communicate_forces()
1912 if (!cvcs[i]->is_enabled()) continue; in communicate_forces()
1915 (cvcs[i])->apply_force(colvarvalue(f.as_vector() * func_grads[grad_index++], in communicate_forces()
1916 cvcs[i]->value().type())); in communicate_forces()
1925 for (size_t i = 0; i < cvcs.size(); i++) { // gradient with respect to cvc i in communicate_forces()
1926 cvm::matrix2d<cvm::real> jacobian (x.size(), cvcs[i]->value().size()); in communicate_forces()
1927 for (size_t j = 0; j < cvcs[i]->value().size(); j++) { // j-th element in communicate_forces()
1931 for (size_t k = 0; k < cvcs.size(); k++) { // in communicate_forces()
1932 for (size_t l = 0; l < cvcs[k]->value().size(); l++) { in communicate_forces()
1933 *(grad_eval_var_refs[r++]) = cvcs[k]->value()[l]; in communicate_forces()
1941 (cvcs[i])->apply_force(colvarvalue(f.as_vector() * jacobian, in communicate_forces()
1942 cvcs[i]->value().type())); in communicate_forces()
1948 for (i = 0; i < cvcs.size(); i++) { in communicate_forces()
1949 if (!cvcs[i]->is_enabled()) continue; in communicate_forces()
1950 (cvcs[i])->apply_force(f * (cvcs[i])->sup_coeff * in communicate_forces()
1951 cvm::real((cvcs[i])->sup_np) * in communicate_forces()
1952 (cvm::integer_power((cvcs[i])->value().real_value, in communicate_forces()
1953 (cvcs[i])->sup_np-1)) ); in communicate_forces()
1958 for (i = 0; i < cvcs.size(); i++) { in communicate_forces()
1959 if (!cvcs[i]->is_enabled()) continue; in communicate_forces()
1960 (cvcs[i])->apply_force(f * (cvcs[i])->sup_coeff); in communicate_forces()
1971 if (flags.size() != cvcs.size()) { in set_cvc_flags()
1985 for (size_t i = 0; i < cvcs.size(); i++) { in update_active_cvc_square_norm()
1986 if (cvcs[i]->is_enabled()) { in update_active_cvc_square_norm()
1987 active_cvc_square_norm += cvcs[i]->sup_coeff * cvcs[i]->sup_coeff; in update_active_cvc_square_norm()
1998 for (size_t i = 0; i < cvcs.size(); i++) { in update_cvc_flags()
1999 cvcs[i]->set_enabled(f_cvc_active, cvc_flags[i]); in update_cvc_flags()
2000 if (cvcs[i]->is_enabled()) { in update_cvc_flags()
2021 if (confs.size() != cvcs.size()) { in update_cvc_config()
2029 for (size_t i = 0; i < cvcs.size(); i++) { in update_cvc_config()
2033 error_code |= cvcs[i]->colvar::cvc::init(conf); in update_cvc_config()
2034 error_code |= cvcs[i]->check_keywords(conf, in update_cvc_config()
2035 cvcs[i]->config_key.c_str()); in update_cvc_config()
2055 return cvcs[0]->param_exists(param_name); in cvc_param_exists()
2065 return cvcs[0]->get_param(param_name); in get_cvc_param()
2076 return cvcs[0]->get_param_ptr(param_name); in get_cvc_param_ptr()
2087 return cvcs[0]->get_param_grad(param_name); in get_cvc_param_grad()
2098 return cvcs[0]->set_param(param_name, new_value); in set_cvc_param()
2151 return (cvcs[0])->dist2(x1, x2); in dist2()
2170 return (cvcs[0])->dist2_lgrad(x1, x2); in dist2_lgrad()
2189 return (cvcs[0])->dist2_rgrad(x1, x2); in dist2_rgrad()
2208 cvcs[0]->wrap(x_unwrapped); in wrap()