1#ifndef COLVARGRID_INTEGRATE_H 
    2#define COLVARGRID_INTEGRATE_H 
   19                      std::shared_ptr<colvar_grid_gradient> gradients);
 
   52  std::shared_ptr<colvar_grid_gradient> gradients;
 
   65  void nr_linbcg_sym(
const std::vector<cvm::real> &b, std::vector<cvm::real> &x,
 
   72  void atimes(
const std::vector<cvm::real> &x, std::vector<cvm::real> &r);
 
Class for accumulating a scalar function on a grid.
Definition: colvargrid.h:1283
 
cvm::real minimum_value() const
Return the lowest value.
Definition: colvargrid.cpp:249
 
void add_constant(cvm::real const &t)
Add a constant to all elements (fast loop)
Definition: colvargrid.h:671
 
Integrate (1D, 2D or 3D) gradients.
Definition: colvargrid_integrate.h:9
 
void nr_linbcg_sym(const std::vector< cvm::real > &b, std::vector< cvm::real > &x, const cvm::real &tol, const int itmax, int &iter, cvm::real &err)
Solve linear system based on CG, valid for symmetric matrices only.
Definition: colvargrid_integrate.cpp:634
 
void update_div_neighbors(const std::vector< int > &ix)
Update matrix containing divergence and boundary conditions based on new gradient point value,...
Definition: colvargrid_integrate.cpp:112
 
bool b_smoothed
Flag requesting the use of a smoothed version of the gradient (default: false)
Definition: colvargrid_integrate.h:46
 
cvm::real l2norm(const std::vector< cvm::real > &x)
l2 norm of a vector
Definition: colvargrid_integrate.cpp:687
 
void atimes(const std::vector< cvm::real > &x, std::vector< cvm::real > &r)
Multiplication by sparse matrix representing Lagrangian (or its transpose)
Definition: colvargrid_integrate.cpp:218
 
int integrate(const int itmax, const cvm::real &tol, cvm::real &err, bool verbose=true)
Calculate potential from divergence (in 2D); return number of steps.
Definition: colvargrid_integrate.cpp:63
 
void get_grad(cvm::real *g, std::vector< int > &ix)
Definition: colvargrid_integrate.cpp:150
 
std::vector< cvm::real > divergence
Array holding divergence + boundary terms (modified Neumann) if not periodic.
Definition: colvargrid_integrate.h:55
 
void set_div()
Set matrix containing divergence and boundary conditions based on complete gradient grid.
Definition: colvargrid_integrate.cpp:103
 
void set_zero_minimum()
Add constant to potential so that its minimum value is zero Useful e.g. for output.
Definition: colvargrid_integrate.h:41
 
void update_div_local(const std::vector< int > &ix)
Update matrix containing divergence and boundary conditions called by update_div_neighbors and by col...
Definition: colvargrid_integrate.cpp:166
 
double real
Defining an abstract real number allows to switch precision.
Definition: colvarmodule.h:139