IMP logo
IMP Reference Guide  develop.cd20b1e321,2019/12/14
The Integrative Modeling Platform
IMP::gsl Namespace Reference

Several general purpose optimizers from the GNU Scientific Library (GSL). More...

Detailed Description

Several general purpose optimizers from the GNU Scientific Library (GSL).

The most useful is probably the IMP::gsl::Simplex optimizer. Note that GSL is licensed under the GPLv3, which requires that all other software linked with it also be licensed under a GPL-compatible license.

GSL

The IMP.gsl module requires GSL. It is available as a prebuilt package on all supported platforms. Note that GSL is distributed under the GPL and so cannot be used in C++ applications with certain other dependencies such as CGAL.

Info

Author(s): Daniel Russel

Maintainer: benmwebb

License: GPL This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

Publications:

Classes

class  ConjugateGradients
 A conjugate gradients optimizer taken from GSL. More...
 
class  GSLOptimizer
 A base class for GSL-based optimizers. More...
 
class  QuasiNewton
 A quasi-Newton optimizer taken from GSL. More...
 
class  Simplex
 A simplex optimizer taken from GSL. More...
 

Typedefs

typedef IMP::Vector
< IMP::Pointer< GSLOptimizer > > 
GSLOptimizers
 
typedef IMP::Vector
< IMP::WeakPointer
< GSLOptimizer > > 
GSLOptimizersTemp
 

Standard module functions

All IMP modules have a set of standard functions to help get information about the module and about files associated with the module.

std::string get_module_version ()
 
std::string get_module_name ()
 
std::string get_data_path (std::string file_name)
 Return the full path to one of this module's data files. More...
 
std::string get_example_path (std::string file_name)
 Return the full path to one of this module's example files. More...
 

Typedef Documentation

A vector of reference-counting object pointers.

Definition at line 56 of file GSLOptimizer.h.

A vector of weak (non reference-counting) pointers to specified objects.

See Also
GSLOptimizer

Definition at line 56 of file GSLOptimizer.h.

Function Documentation

std::string IMP::gsl::get_data_path ( std::string  file_name)

Return the full path to one of this module's data files.

To read the data file "data_library" that was placed in the data directory of this module, do something like

std::ifstream in(IMP::gsl::get_data_path("data_library"));

This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh script.

Note
Each module has its own data directory, so be sure to use this function from the correct module.
std::string IMP::gsl::get_example_path ( std::string  file_name)

Return the full path to one of this module's example files.

To read the example file "example_protein.pdb" that was placed in the examples directory of this module, do something like

std::ifstream in(IMP::gsl::get_example_path("example_protein.pdb"));

This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh script.

Note
Each module has its own example directory, so be sure to use this function from the correct module.